3.0 KiB
Configuration PostgreSQL pour Gitea
Ce dossier contient la configuration Docker Compose pour pérenniser le conteneur PostgreSQL de Gitea.
Configuration actuelle
- Image :
postgres:14 - Nom du conteneur :
gitea_db - Volume :
gitgit_syoul_fr_db_data(existant, ne sera pas recréé) - Réseau :
gitgit_syoul_fr_gitea_net(existant, ne sera pas recréé) - Restart policy :
always
Utilisation
Vérifier la configuration
cd /opt/postgres # ou le chemin où vous avez copié ce fichier
docker compose config
Important : Ne pas appliquer maintenant
ATTENTION : Le conteneur PostgreSQL est actuellement en production et fonctionne. Ce fichier docker-compose.yml est une sauvegarde de la configuration pour le jour où vous devrez recréer le conteneur.
Quand utiliser ce fichier
- En cas de migration : Si vous devez déplacer le conteneur vers un autre serveur
- En cas de recréation : Si le conteneur doit être recréé (mise à jour, problème, etc.)
- Pour la documentation : Pour avoir une trace de la configuration actuelle
Procédure de migration/recréation (à faire plus tard)
-
Sauvegarder la base de données :
docker exec gitea_db pg_dump -U gitea gitea > backup_$(date +%Y%m%d).sql -
Arrêter le conteneur existant (si nécessaire) :
docker stop gitea_db -
Utiliser le docker-compose.yml :
cd /opt/postgres docker compose up -d -
Vérifier que tout fonctionne :
docker ps | grep gitea_db docker logs gitea_db
Notes importantes
- Le volume
gitgit_syoul_fr_db_datacontient toutes les données PostgreSQL - Le réseau
gitgit_syoul_fr_gitea_netest partagé avec Gitea et Woodpecker - Le mot de passe est celui actuellement utilisé en production
- Aucun port n'est exposé (communication interne uniquement)
Sécurité
Version actuelle (docker-compose.yml)
Le mot de passe est stocké en clair dans le docker-compose.yml avec la valeur actuelle : Gitea_Db-2025_Secure
Version sécurisée avec fichier .env (optionnelle)
Pour une meilleure sécurité, vous pouvez utiliser docker-compose.env.yml qui charge les variables depuis un fichier .env :
-
Créer le fichier .env (sur le serveur uniquement, ne pas versionner) :
cd /opt/postgres cat > .env << 'EOF' POSTGRES_USER=gitea POSTGRES_PASSWORD=Gitea_Db-2025_Secure POSTGRES_DB=gitea EOF -
Vérifier que .env est ignoré par git :
echo ".env" >> .gitignore git check-ignore .env -
Utiliser la version avec .env :
docker compose -f docker-compose.env.yml up -d
Alternatives de sécurité avancées
Pour une sécurité encore plus poussée :
- Utiliser Docker Secrets (en mode Swarm)
- Utiliser un gestionnaire de secrets externe (Vault, etc.)
- Chiffrer le fichier
.envavec des outils commesopsouansible-vault