Files
chlova/infra/gitea/docker-compose.yml
T
Kantin-Petit 4e23828dae feat(infra): déploie gitea + n8n-chlova sur local, topologie mono-hôte (v0.33.0)
Stacks gitea (1.26.4, git.pogoo.app) et n8n-chlova (2.20.8,
n8n-chlova.pogoo.app) déployés via Portainer sur l'hôte local (réseau proxy),
versionnés dans infra/. docker-compose.prod.yml recâblé pour le tout-local
(MCP_N8N_URL n8n-chlova, PORTAINER_URL interne, sidecar sur proxy). Runbook
deploy.md réécrit.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016w5jRe87MGdd6AMvXQcHNi
2026-06-23 11:40:24 +02:00

44 lines
1.4 KiB
YAML

# Gitea — serveur git auto-hébergé du homelab, source du GitOps de CHLOVA.
#
# Déployé sur l'hôte `local` (Portainer endpoint 3), réseau `proxy`, exposé en
# https://git.pogoo.app via Traefik (resolver letsencrypt). DB = SQLite (volume).
# Installeur laissé ouvert au 1er run : l'opérateur crée le compte admin, puis
# l'enregistrement public reste désactivé. Voir docs/deploy.md §1.
#
# Image épinglée (jamais :latest). Aucune donnée sensible ici (admin créé en UI).
services:
gitea:
image: gitea/gitea:1.26.4
container_name: gitea
restart: unless-stopped
environment:
- USER_UID=1000
- USER_GID=1000
- TZ=Europe/Paris
- GITEA__server__DOMAIN=git.pogoo.app
- GITEA__server__ROOT_URL=https://git.pogoo.app/
- GITEA__server__DISABLE_SSH=true # push via HTTPS uniquement
- GITEA__database__DB_TYPE=sqlite3
- GITEA__service__DISABLE_REGISTRATION=true
volumes:
- gitea-data:/data
networks:
- proxy
labels:
- "traefik.enable=true"
- "traefik.docker.network=proxy"
- "traefik.http.routers.gitea.rule=Host(`git.pogoo.app`)"
- "traefik.http.routers.gitea.entrypoints=websecure"
- "traefik.http.routers.gitea.tls=true"
- "traefik.http.routers.gitea.tls.certresolver=letsencrypt"
- "traefik.http.services.gitea.loadbalancer.server.port=3000"
networks:
proxy:
name: proxy
external: true
volumes:
gitea-data: