Krok 13 (2/3): Gitea uruchomiona pod git.dfkk.cloud
- gitea/gitea:1.27.2 + postgres:18.6 (najnowsze stabilne tagi)
- rejestracja wyłączona od startu (DISABLE_REGISTRATION=true),
bezpieczniej niż wyłączanie ręcznie po pierwszym logowaniu
- baza tylko w sieci gitea-internal, bez edge
- postgres 18+: poprawiony mount na /var/lib/postgresql (zmiana
konwencji względem starszych wersji, image inaczej nie startował)
- dane w /srv/data/gitea/{gitea,postgres}, .env poza repo
- dodano DNS wildcard *.dfkk.cloud -> 54.38.159.156
- zweryfikowane: HTTPS 200, cert Let's Encrypt ważny, rejestracja
faktycznie zablokowana, SSH kontenera nieopublikowany na hosta
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
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
|
||||
Reference in New Issue
Block a user