Ajoute des scripts de déploiement Proxmox LXC
This commit is contained in:
65
README.md
65
README.md
@@ -28,6 +28,69 @@ docker compose up -d --build
|
||||
|
||||
L'application est ensuite disponible sur `http://localhost:8080`.
|
||||
|
||||
## Déploiement dans un LXC Proxmox
|
||||
|
||||
Deux scripts Bash permettent de créer un conteneur LXC Debian sur Proxmox puis de le mettre à jour depuis Git.
|
||||
|
||||
Prérequis sur la machine qui lance les scripts :
|
||||
|
||||
- `ssh`
|
||||
- `sshpass`
|
||||
|
||||
Le déploiement dans le LXC n'utilise pas Docker. Le script installe `nginx`, `git` et `rsync` dans le conteneur, clone le dépôt puis publie uniquement les fichiers web.
|
||||
|
||||
### Installer un nouveau LXC
|
||||
|
||||
```bash
|
||||
./scripts/install-proxmox-lxc.sh \
|
||||
--proxmox-host 10.0.0.2 \
|
||||
--proxmox-user root@pam \
|
||||
--proxmox-password 'secret'
|
||||
```
|
||||
|
||||
Valeurs par défaut utiles :
|
||||
|
||||
- LXC nommé `chesscubing-web`
|
||||
- IP du LXC en `dhcp`
|
||||
- branche Git `main`
|
||||
- dépôt `https://git.jeannerot.fr/christophe/chesscubing.git`
|
||||
|
||||
Options utiles si besoin :
|
||||
|
||||
- `--ctid 120`
|
||||
- `--lxc-ip 192.168.1.50/24 --gateway 192.168.1.1`
|
||||
- `--template-storage local`
|
||||
- `--rootfs-storage local-lvm`
|
||||
- `--branch main`
|
||||
|
||||
À la fin, le script affiche :
|
||||
|
||||
- le `CTID`
|
||||
- le mot de passe `root` du LXC
|
||||
- l'URL probable du site
|
||||
|
||||
### Mettre à jour depuis Git
|
||||
|
||||
```bash
|
||||
./scripts/update-proxmox-lxc.sh \
|
||||
--proxmox-host 10.0.0.2 \
|
||||
--proxmox-user root@pam \
|
||||
--proxmox-password 'secret' \
|
||||
--ctid 120
|
||||
```
|
||||
|
||||
On peut aussi cibler le conteneur par nom si on n'a pas le `CTID` :
|
||||
|
||||
```bash
|
||||
./scripts/update-proxmox-lxc.sh \
|
||||
--proxmox-host 10.0.0.2 \
|
||||
--proxmox-user root@pam \
|
||||
--proxmox-password 'secret' \
|
||||
--hostname chesscubing-web
|
||||
```
|
||||
|
||||
Le script de mise à jour exécute un `git pull --ff-only` dans le conteneur puis republie les fichiers statiques via `nginx`.
|
||||
|
||||
## Fichiers clés
|
||||
|
||||
- `index.html` : page d'accueil du site
|
||||
@@ -38,3 +101,5 @@ L'application est ensuite disponible sur `http://localhost:8080`.
|
||||
- `styles.css` : design mobile/tablette
|
||||
- `app.js` : logique de match et arbitrage
|
||||
- `docker-compose.yml` + `Dockerfile` : exécution locale
|
||||
- `scripts/install-proxmox-lxc.sh` : création et déploiement d'un LXC Proxmox
|
||||
- `scripts/update-proxmox-lxc.sh` : mise à jour d'un LXC existant depuis Git
|
||||
|
||||
Reference in New Issue
Block a user