services: gitea: image: gitea/gitea:1.27.2 container_name: gitea restart: unless-stopped environment: - USER_UID=1000 - USER_GID=1000 - 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} - GITEA__server__DOMAIN=git.dfkk.cloud - GITEA__server__ROOT_URL=https://git.dfkk.cloud/ - GITEA__server__HTTP_PORT=3000 # Wewnątrz obrazu działa systemowy openssh-server (s6), niezależny od # wbudowanego SSH Gitei — GITEA__server__DISABLE_SSH go nie wyłącza. # Nieszkodliwe: port 22 kontenera nie jest publikowany na hosta (brak # "ports:" w tym serwisie), więc jest nieosiągalny z zewnątrz. Realne # bezpieczeństwo daje brak publikacji portu, nie ustawienie w app.ini. - GITEA__service__DISABLE_REGISTRATION=true - GITEA__service__REQUIRE_SIGNIN_VIEW=false volumes: - /srv/data/gitea/gitea:/data networks: - edge - gitea-internal labels: - traefik.enable=true - traefik.http.routers.gitea.rule=Host(`git.dfkk.cloud`) - traefik.http.routers.gitea.entrypoints=websecure - traefik.http.routers.gitea.tls.certresolver=ovh - traefik.http.services.gitea.loadbalancer.server.port=3000 depends_on: - gitea-db gitea-db: image: postgres:18.6 container_name: gitea-db restart: unless-stopped environment: - POSTGRES_USER=gitea - POSTGRES_PASSWORD=${GITEA_DB_PASSWORD} - POSTGRES_DB=gitea volumes: - /srv/data/gitea/postgres:/var/lib/postgresql # postgres 18+: mount na /var/lib/postgresql, nie /data networks: - gitea-internal # bez edge — baza niewidoczna z zewnątrz networks: edge: external: true gitea-internal: name: gitea-internal