Files
gitea-migration/templates/docker-compose-gitea.yml.tpl
S 35aeb504c4 feat: add DB service block to docker-compose-gitea template
Add DB_SERVICE_START/END markers for the database container and
DB_DEPENDS_START/END for the gitea service depends_on. Phase scripts
strip these blocks for sqlite3 and populate DB-specific vars
(image, env, healthcheck, data dir) for mysql/postgres/mssql.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 10:16:37 -05:00

51 lines
1.5 KiB
Smarty

# Gitea Docker Compose — rendered by phase1_gitea_unraid.sh and phase2_gitea_fedora.sh
# Variables: GITEA_VERSION, DATA_PATH, GITEA_PORT, GITEA_SSH_PORT
# DATA_PATH is host-specific (UNRAID_GITEA_DATA_PATH or FEDORA_GITEA_DATA_PATH)
# DB_SERVICE block is stripped for sqlite3, kept for mysql/postgres/mssql.
version: "3"
services:
# DB_SERVICE_START
db:
image: ${DB_DOCKER_IMAGE}
container_name: gitea-db
restart: unless-stopped
environment:
${DB_ENV_VARS}
volumes:
- ${DATA_PATH}/db:/var/lib/${DB_DATA_DIR}
healthcheck:
test: ${DB_HEALTHCHECK}
interval: 10s
timeout: 5s
retries: 5
# DB_SERVICE_END
gitea:
image: gitea/gitea:${GITEA_VERSION}
container_name: gitea
restart: unless-stopped
# DB_DEPENDS_START
depends_on:
db:
condition: service_healthy
# DB_DEPENDS_END
environment:
- USER_UID=1000
- USER_GID=1000
volumes:
- ${DATA_PATH}/data:/data # Gitea repositories, LFS, avatars, etc.
- ${DATA_PATH}/config:/data/gitea/conf # app.ini lives here
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- "${GITEA_PORT}:3000" # Web UI + API
- "${GITEA_SSH_PORT}:22" # Git over SSH (host port 22 is taken by SSH server)
healthcheck:
test: ["CMD", "curl", "-sf", "http://localhost:3000/api/v1/version"]
interval: 30s
timeout: 5s
retries: 3
start_period: 30s