Go to file
2024-10-16 11:41:44 +02:00
installing save 2024-10-16 11:41:44 +02:00
old_services save 2024-10-16 11:41:44 +02:00
provisioning save 2024-10-16 11:41:44 +02:00
services save 2024-10-16 11:41:44 +02:00
.gitignore save 2024-10-16 11:41:44 +02:00
readme.md big 2023 update 2024-01-02 17:50:14 +01:00

Services Jean-Cloud

Dossier installing

Contient des scripts sh pour installer debian sur un disque dur. Qui ira ensuite se brancher dans un ordi :)

Dossier provisioning

Contient

  • des rôles ansible pour configurer les serveurs
  • un rôle ansible pour envoyer les services sur les serveurs (rsync bête)
  • des scripts maisons à envoyer sur les serveurs

Dossier services

Les services à faire tourner.

Chaque service qui tourne sur jean-cloud est composé :

  • Un uid et username pour des questions de droits
  • deploy.sh dun script dinstallation
  • docker-compose.yaml dun fichier docker-compose
  • nginx_server.conf dun fichier de conf nginx
  • deploy_http.sh dun script de déploiement web (qui est exécuté avec lutilisateur www-data et peut être exécuté par le serveur web lui-même)
  • wg-*.sh Script qui génère une config wireguard pour linterface *

Chaque élément est facultatif.

Chaque élément est éxécuté, démarré ou installé dans lordre par deploy_service.sh

scripts

dans provisioning/roles/deploy_all/files/bin

-deployall.sh va pour chaque service vérifier sil doit tourner sur la machine actuelle et lance le deploy_service.sh si cest le cas.

  • letsencrypt.sh va renouveler tous les certificats dont nginx a besoin (il va lire dans /etc/nginx/sites-enabled).
  • git_update.sh récupère une copie à jour dun dépôt git (fait un clone ou pull en fonction des besoins) et sassure de ne pas garder tout lhistorique du dépôt.

Variables

Les scripts ont accès aux variables suivantes :

  • DATA_DIR : là où sauvegarder des données.
  • DOCKER_DIR : dossier contenant les fichiers de déploiement du service.
  • HTTP_DIR : là où mettre les fichiers web si ils sont statiques. Ce dossier peut être détruit à tout moment, il nest pas sauvegardé.
  • JC_SERVICE : le nom du dossier service. Correspond souvent à ladresse du service. Ces variables sont ajoutées au ficher .env du service par le script gen_env.sh.