jean-cloud-services/readme.md

46 lines
2.0 KiB
Markdown
Raw Permalink Normal View History

2023-05-23 10:26:03 +00:00
# Services Jean-Cloud
2024-01-02 16:50:14 +00:00
2023-05-23 10:26:03 +00:00
## 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
2023-09-07 17:50:05 +00:00
- un rôle ansible pour envoyer les services sur les serveurs (rsync bête)
2023-05-23 10:26:03 +00:00
- des scripts maisons à envoyer sur les serveurs
## Dossier services
Les services à faire tourner.
2023-09-07 17:50:05 +00:00
Chaque service qui tourne sur jean-cloud est composé :
2024-01-02 16:50:14 +00:00
- Un uid et username pour des questions de droits
2023-09-07 17:50:05 +00:00
- `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`
2023-05-23 10:26:03 +00:00
## scripts
2023-09-07 17:50:05 +00:00
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.
2023-05-23 10:26:03 +00:00
## Variables
2023-09-07 17:50:05 +00:00
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`.
2023-08-28 18:25:32 +00:00