3.6 KiB
3.6 KiB
Configuration Gitea
Fichiers de configuration
gitea/docker-compose.yml: Configuration Docker Composegitea/gitea.env: Variables d'environnement
Configuration actuelle
docker-compose.yml
services:
gitea:
container_name: gitea
image: gitea/gitea:latest
restart: always
env_file:
- gitea.env
networks:
- gitgit_syoul_fr_gitea_net
volumes:
- gitgit_syoul_fr_gitea_data:/data
ports:
- "3300:3000" # Web UI
- "2222:22" # SSH
volumes:
gitgit_syoul_fr_gitea_data:
external: true
networks:
gitgit_syoul_fr_gitea_net:
external: true
Variables d'environnement (gitea.env)
| Variable | Valeur | Description |
|---|---|---|
USER_UID |
1000 | UID de l'utilisateur Gitea |
USER_GID |
1000 | GID de l'utilisateur Gitea |
GITEA__database__DB_TYPE |
postgres | Type de base de donnees |
GITEA__database__HOST |
gitea_db:5432 | Hote de la base de donnees |
GITEA__database__NAME |
gitea | Nom de la base de donnees |
GITEA__database__USER |
gitea | Utilisateur de la base de donnees |
GITEA__database__PASSWD |
*** | Mot de passe de la base de donnees |
GITEA__server__DOMAIN |
git.syoul.fr | Domaine public |
GITEA__server__PROTOCOL |
http | Protocole interne |
GITEA__server__ROOT_URL |
http://git.syoul.fr/ | URL racine publique |
GITEA__server__HTTP_PORT |
3000 | Port HTTP interne |
Configuration OAuth2 pour Woodpecker
Creer l'application OAuth2
- Se connecter a Gitea en tant qu'administrateur
- Aller dans Parametres utilisateur > Applications
- Sous "Gerer les applications OAuth2", creer une nouvelle application :
- Nom :
Woodpecker CI - URI de redirection :
https://ci.syoul.fr/authorize - Client confidentiel : Oui
- Nom :
- Noter le Client ID et le Client Secret
Configurer Woodpecker
Dans woodpecker/docker-compose.yml, utiliser :
environment:
WOODPECKER_GITEA_CLIENT: "votre-client-id"
WOODPECKER_GITEA_SECRET: "votre-client-secret"
Configuration des webhooks
Autoriser les webhooks locaux
Dans Gitea, ajouter dans app.ini ou via variables d'environnement :
[webhook]
ALLOWED_HOST_LIST = external,loopback,private
Via docker-compose :
environment:
GITEA__webhook__ALLOWED_HOST_LIST: external,loopback,private
Configurer le webhook automatique
Woodpecker configure automatiquement les webhooks lors de l'activation d'un depot. Verifier dans :
Depot > Parametres > Webhooks
Maintenance
Sauvegarder Gitea
# Sauvegarder le volume de donnees
docker run --rm -v gitgit_syoul_fr_gitea_data:/data -v $(pwd):/backup alpine tar cvzf /backup/gitea_backup_$(date +%Y%m%d).tar.gz /data
# Sauvegarder la base de donnees
docker exec gitea_db pg_dump -U gitea gitea > gitea_db_$(date +%Y%m%d).sql
Mettre a jour Gitea
cd /opt/gitea
docker compose pull
docker compose up -d
Logs
docker logs gitea -f
Depannage
Erreur de connexion a la base de donnees
Verifier que PostgreSQL est accessible :
docker exec gitea_db pg_isready -U gitea
Verifier le reseau :
docker exec gitea ping -c 2 gitea_db
Erreur OAuth2 "Client ID not registered"
- Verifier que l'application OAuth2 existe dans Gitea
- Verifier que le Client ID dans Woodpecker correspond
- Verifier que l'URI de redirection est correcte
Problemes d'envoi d'emails
Verifier les logs :
docker logs gitea 2>&1 | grep -i mail
Tester la connexion SMTP :
docker exec gitea curl -v telnet://mail.anuanua.fr:465