services: gitea: image: docker.io/gitea/gitea:1.25.4 restart: unless-stopped environment: - USER_UID=1000 - USER_GID=1000 - GITEA__database__DB_TYPE=postgres - GITEA__database__HOST=gitea_db - GITEA__database__NAME=gitea - GITEA__database__USER=gitea - GITEA__database__PASSWD=${DATABASE_PASSWORD} - GITEA__server__SSH_PORT=2221 - GITEA__server__ROOT_URL=https://gitea.mk-labs.cloud - GITEA__server__DOMAIN=gitea.mk-labs.cloud - GITEA__server__HTTP_PORT=3000 - GITEA__service__TRUSTED_PROXIES=10.1.71.35 networks: - gitea_backend ports: - "3000:3000" - "2221:22" volumes: - gitea_data:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro depends_on: gitea_db: condition: service_healthy gitea_db: image: docker.io/library/postgres:17.8 restart: unless-stopped environment: - TZ=America/Chicago - POSTGRES_USER=gitea - POSTGRES_PASSWORD=${DATABASE_PASSWORD} - POSTGRES_DB=gitea networks: - gitea_backend healthcheck: test: ["CMD-SHELL", "pg_isready -U gitea"] start_period: 30s interval: 10s timeout: 10s retries: 5 volumes: - gitea_db:/var/lib/postgresql/data volumes: gitea_data: driver: local gitea_db: driver: local networks: gitea_backend: driver: bridge