version: "3" networks: gitea: external: false services: server: image: docker.gitea.com/gitea:1.25.2 container_name: gitea environment: - USER_UID=1000 - USER_GID=1000 restart: always labels: homepage.group: "Version Control" homepage.name: "Gitea" homepage.icon: "gitea.png" homepage.href: "https://gitea.${DOMAIN}" homepage.description: "Git Server" traefik.enable: "true" # Web traefik.http.routers.gitea.rule: "Host(`gitea.${DOMAIN}`)" traefik.http.routers.gitea.entrypoints: "https" traefik.http.routers.gitea.tls.certresolver: "cloudflare" traefik.http.services.gitea.loadbalancer.server.url: "http://${HOST_IP}:3000" # SSH traefik.tcp.routers.gitea-ssh.rule: "HostSNI(`git.${DOMAIN}`)" traefik.tcp.routers.gitea-ssh.entrypoints: "https" traefik.tcp.routers.gitea-ssh.service: "gitea-ssh" traefik.tcp.routers.gitea-ssh.tls.passthrough: "true" traefik.tcp.services.gitea-ssh.loadbalancer.server.address: "${HOST_IP}:222" networks: - gitea volumes: - ${CONFIG_ROOT}/gitea:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - "3000:3000" - "222:22"