services: gitea: image: gitea/gitea:latest container_name: gitea restart: unless-stopped networks: - homelab-network - traefik-network ports: - ${EXTERNAL_PORT}:${INTERNAL_PORT} volumes: - ./data:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro environment: - USER_UID=${PUID} - USER_GID=${PGID} - GITEA__database__DB_TYPE=postgres - GITEA__database__HOST=gitea-db:5432 - GITEA__database__NAME=gitea - GITEA__database__USER=gitea - GITEA__database__PASSWD=${GITEA_DB_PASSWORD} healthcheck: test: ['CMD', 'curl', '-f', 'http://localhost:3000/'] interval: 30s timeout: 10s retries: 3 start_period: 60s depends_on: - gitea-db labels: - ${ICON_LABEL} - ${HOST_LABEL} - ${LOADBALANCER_LABEL} - ${WATCHTOWER_ENABLE_LABEL} - ${CATEGORY_LABEL} - ${DESCRIPTION_LABEL} - ${TRAEFIK_ENABLE_LABEL} - ${TRAEFIK_NETWORK_LABEL} - ${ENTRYPOINT_LABEL} - ${CERT_LABEL} # - ${AUTHELIA_LABEL} gitea-db: image: postgres:14-alpine container_name: gitea-db restart: unless-stopped networks: - homelab-network volumes: - ./db:/var/lib/postgresql/data environment: - POSTGRES_USER=gitea - POSTGRES_PASSWORD=${GITEA_DB_PASSWORD} - POSTGRES_DB=gitea labels: - ${DB_ICON_LABEL} - 'homelab.category=productivity' - 'homelab.description=Gitea database' networks: homelab-network: external: true traefik-network: external: true x-dockge: urls: - https://${PROXY_URL} - ${LOCAL_URL} x-arcane: icon: ${ICON_URL} urls: - https://${PROXY_URL} - ${LOCAL_URL}