Files
gitea-migration/templates/docker-compose-gitea.yml.tpl
S 54eab1bf89 feat: switch docker-compose template from port mapping to macvlan
Remove ports: section (no more host port mapping). Add networks:
with static ipv4_address for gitea and db containers. Reference
external gitea_net network (macvlan created by phase scripts).
Add DB_CONTAINER_IP for database service networking.

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

58 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_CONTAINER_IP
# 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
networks:
gitea_net:
ipv4_address: ${DB_CONTAINER_IP}
# 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
networks:
gitea_net:
ipv4_address: ${GITEA_CONTAINER_IP}
healthcheck:
test: ["CMD", "curl", "-sf", "http://localhost:3000/api/v1/version"]
interval: 30s
timeout: 5s
retries: 3
start_period: 30s
networks:
gitea_net:
external: true