Files
infrastructure/postgres
syoul 4aa46fbbbb feat: ajout des labels Consul pour améliorer la découverte de services
- Mise à jour registrator vers l'image master
- Ajout labels SERVICE_NAME et health checks pour tous les services
- Gitea: labels avec health checks HTTP et TCP
- Woodpecker: labels pour server et agent avec health checks
- PostgreSQL: labels avec health check TCP
- Ajout .env.example et .gitignore pour postgres
2025-12-24 17:36:34 +01:00
..

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

  1. En cas de migration : Si vous devez déplacer le conteneur vers un autre serveur
  2. En cas de recréation : Si le conteneur doit être recréé (mise à jour, problème, etc.)
  3. Pour la documentation : Pour avoir une trace de la configuration actuelle

Procédure de migration/recréation (à faire plus tard)

  1. Sauvegarder la base de données :

    docker exec gitea_db pg_dump -U gitea gitea > backup_$(date +%Y%m%d).sql
    
  2. Arrêter le conteneur existant (si nécessaire) :

    docker stop gitea_db
    
  3. Utiliser le docker-compose.yml :

    cd /opt/postgres
    docker compose up -d
    
  4. Vérifier que tout fonctionne :

    docker ps | grep gitea_db
    docker logs gitea_db
    

Notes importantes

  • Le volume gitgit_syoul_fr_db_data contient toutes les données PostgreSQL
  • Le réseau gitgit_syoul_fr_gitea_net est 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 :

  1. 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
    
  2. Vérifier que .env est ignoré par git :

    echo ".env" >> .gitignore
    git check-ignore .env
    
  3. 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 :

  1. Utiliser Docker Secrets (en mode Swarm)
  2. Utiliser un gestionnaire de secrets externe (Vault, etc.)
  3. Chiffrer le fichier .env avec des outils comme sops ou ansible-vault