--- services: server: image: gitea/gitea:1.23.8 container_name: gitea-server environment: - USER_UID=1000 - USER_GID=1000 - GITEA__database__DB_TYPE=postgres - GITEA__database__HOST=${POSTGRES_HOST:-db}:${POSTGRES_PORT:-5432} - GITEA__database__NAME=${POSTGRES_DB:?POSTGRES_DB not set} - GITEA__database__USER=${POSTGRES_USER:?POSTGRES_USER not set} - GITEA__database__PASSWD=${POSTGRES_PASSWORD:?POSTGRES_PASSWORD not set} - GITEA__server__SSH_PORT=2221 - GITEA__server__ROOT_URL=https://git.${DOMAIN} networks: - frontend - backend volumes: - /mnt/hdd1/data/docker/volumes/gitea-data:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - "2221:22" depends_on: - db # <-- labels: - traefik.enable=true - traefik.http.services.gitea.loadbalancer.server.port=3000 - traefik.http.services.gitea.loadbalancer.server.scheme=http - traefik.http.routers.gitea-https.entrypoints=websecure - traefik.http.routers.gitea-https.rule=Host(`git.${DOMAIN}`) - traefik.http.routers.gitea-https.tls=true - traefik.http.routers.gitea-https.tls.certresolver=cloudflare restart: always db: image: postgres:14 container_name: gitea-db environment: - POSTGRES_USER=${POSTGRES_USER:?POSTGRES_USER not set} - POSTGRES_PASSWORD=${POSTGRES_PASSWORD:?POSTGRES_PASSWORD not set} - POSTGRES_DB=${POSTGRES_DB:?POSTGRES_DB not set} networks: - backend volumes: - /mnt/hdd1/data/docker/volumes/gitea-db:/var/lib/postgresql/data restart: always volumes: gitea-data: driver: local gitea-db: driver: local networks: frontend: external: true backend: external: true