From 796fff9f02baaf55db156c3d77e5ace62b61db52 Mon Sep 17 00:00:00 2001 From: Gustavo Ocanto Date: Fri, 4 Jul 2025 12:05:39 +0800 Subject: [PATCH 1/2] add structure --- .env.example | 2 ++ .gitignore | 2 ++ caddy/Caddyfile.prod | 17 ++++++++++++++++- docker-compose.yml | 1 + storage/logs/caddy/.gitkeep | 0 5 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 storage/logs/caddy/.gitkeep diff --git a/.env.example b/.env.example index 1a00f606..d4fc9b10 100644 --- a/.env.example +++ b/.env.example @@ -32,3 +32,5 @@ EN_DB_BIN_DIR="" # Example: postgresql://gocanto-user:gocanto-password@api-db:5432/oullin_db?sslmode=require ENV_DB_URL="" +# --- The logs directory for Caddy to persists its logs. +CADDY_LOGS_PATH="" diff --git a/.gitignore b/.gitignore index 4272630e..8247a93d 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,8 @@ storage/media/*.* storage/media/posts/*.* storage/media/users/*.* !storage/logs/.gitkeep +!storage/logs/caddy +!storage/logs/caddy/.gitkeep !storage/media/.gitkeep !storage/media/posts/.gitkeep !storage/media/users/.gitkeep diff --git a/caddy/Caddyfile.prod b/caddy/Caddyfile.prod index 464500f0..ca41dd7e 100644 --- a/caddy/Caddyfile.prod +++ b/caddy/Caddyfile.prod @@ -17,7 +17,22 @@ oullin.io { Referrer-Policy "strict-origin-when-cross-origin" } + log { + output file /var/log/caddy/oullin.io.log { + roll_size 10mb # Rotate logs after they reach 10MB + roll_keep 5 # Keep the last 5 rotated log files + } + + format json + } + # Reverse proxy all requests to the Go application service. # 'api' is the service name defined in docker-compose.yml. - reverse_proxy api:8080 + reverse_proxy api:8080 { + # Set timeouts to prevent slow backends from holding up resources. + transport http { + dial_timeout 10s + response_header_timeout 30s + } + } } diff --git a/docker-compose.yml b/docker-compose.yml index 78ad4857..80a1d127 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -46,6 +46,7 @@ services: - caddy_data:/data - caddy_config:/config - ./caddy/Caddyfile.prod:/etc/caddy/Caddyfile + - ${CADDY_LOGS_PATH}:/var/log/caddy networks: - caddy_net diff --git a/storage/logs/caddy/.gitkeep b/storage/logs/caddy/.gitkeep new file mode 100644 index 00000000..e69de29b From 7cbdb041587fce375025f670b55ddea72e9d3531 Mon Sep 17 00:00:00 2001 From: Gustavo Ocanto Date: Fri, 4 Jul 2025 12:24:24 +0800 Subject: [PATCH 2/2] example --- .env.example | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.env.example b/.env.example index d4fc9b10..2521ea30 100644 --- a/.env.example +++ b/.env.example @@ -33,4 +33,4 @@ EN_DB_BIN_DIR="" ENV_DB_URL="" # --- The logs directory for Caddy to persists its logs. -CADDY_LOGS_PATH="" +CADDY_LOGS_PATH="./storage/logs/caddy"