forgejo: use wget for healthcheck, add SQLite WAL mode

- wget is available in the forgejo image without extra deps (curl isn't)
- increase start_period to 60s for DB migration window
- enable SQLite WAL journal mode for better concurrent read performance
This commit is contained in:
m1ngsama 2026-04-15 10:03:30 +08:00
parent 1ef24b3be8
commit adcf0b1884

View file

@ -8,6 +8,7 @@ services:
FORGEJO__server__ROOT_URL: "${FORGEJO_ROOT_URL:-http://localhost:3000}" FORGEJO__server__ROOT_URL: "${FORGEJO_ROOT_URL:-http://localhost:3000}"
FORGEJO__server__SSH_PORT: "${FORGEJO_SSH_PORT:-2223}" FORGEJO__server__SSH_PORT: "${FORGEJO_SSH_PORT:-2223}"
FORGEJO__server__LFS_START_SERVER: "true" FORGEJO__server__LFS_START_SERVER: "true"
FORGEJO__database__SQLITE_JOURNAL_MODE: "WAL"
ports: ports:
- "${FORGEJO_HTTP_PORT:-3000}:3000" - "${FORGEJO_HTTP_PORT:-3000}:3000"
- "${FORGEJO_SSH_PORT:-2223}:22" - "${FORGEJO_SSH_PORT:-2223}:22"
@ -16,9 +17,9 @@ services:
- /etc/timezone:/etc/timezone:ro - /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro - /etc/localtime:/etc/localtime:ro
healthcheck: healthcheck:
test: ["CMD", "curl", "-fSs", "http://localhost:3000/api/healthz"] test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:3000/api/healthz"]
interval: 30s interval: 30s
timeout: 5s timeout: 10s
retries: 3 retries: 5
start_period: 30s start_period: 60s
restart: unless-stopped restart: unless-stopped