networks: proxy: external: true gitea: name: gitea external: false volumes: gitea: name: gitea gitea-db: name: gitea-db gitea-runner: name: gitea-runner services: gitea: image: gitea/gitea container_name: gitea hostname: gitea environment: USER_UID: 1000 USER_GID: 1000 GITEA__database__DB_TYPE: postgres GITEA__database__HOST: gitea-db:5432 GITEA__database__NAME: ${DB_NAME} GITEA__database__USER: ${DB_USER} GITEA__database__PASSWD: ${DB_PASS} GITEA__server__START_SSH_SERVER: true GITEA__server__SSH_PORT: 22 GITEA__server__SSH_LISTEN_PORT: 222 restart: unless-stopped depends_on: - gitea-db volumes: - gitea:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro networks: - proxy - gitea labels: - "traefik.enable=true" - "traefik.http.routers.git.entrypoints=web" - "traefik.http.routers.git.rule=Host(`gitea.steinle-computer.de`)" - "traefik.http.routers.git.middlewares=git" - "traefik.http.middlewares.git.redirectscheme.scheme=https" - "traefik.http.routers.git-secure.entrypoints=websecure" - "traefik.http.routers.git-secure.rule=Host(`gitea.steinle-computer.de`)" - "traefik.http.routers.git-secure.service=git-secure" - "traefik.http.routers.git-secure.tls=true" - "traefik.http.routers.git-secure.tls.certresolver=cs" - "traefik.http.routers.git-secure.tls.domains[0].main=gitea.steinle-computer.de" - "traefik.http.services.git-secure.loadbalancer.server.port=3000" - "traefik.tcp.routers.git-ssh.entrypoints=ssh" - "traefik.tcp.routers.git-ssh.rule=HostSNI(`*`)" - "traefik.tcp.routers.git-ssh.service=git-ssh" - "traefik.tcp.services.git-ssh.loadbalancer.server.port=222" gitea-db: image: postgres:17-alpine container_name: gitea-db hostname: gitea-db restart: unless-stopped volumes: - gitea-db:/var/lib/postgresql/data networks: - gitea environment: POSTGRES_PASSWORD: ${DB_PASS} POSTGRES_USER: ${DB_USER} POSTGRES_DB: ${DB_NAME} healthcheck: test: [ "CMD-SHELL", "pg_isready -U $DB_USER" ] runner: image: gitea/act_runner restart: always depends_on: - gitea volumes: - gitea-runner:/data - /var/run/docker.sock:/var/run/docker.sock environment: - GITEA_INSTANCE_URL=https://gitea.steinle-computer.de - GITEA_RUNNER_REGISTRATION_TOKEN=jMMDhDpMzlmtN2pXzVj6qcAdlGEpDb8dmzbfmdm8 networks: - gitea