Documenter le wrapper ssh de déploiement distant du Pi

This commit is contained in:
Antoine Jacquin
2026-09-19 21:28:37 +02:00
parent 3a374a3ab4
commit 52f67b8e55
2 changed files with 27 additions and 3 deletions

View File

@ -96,8 +96,32 @@ manuellement si besoin.
Avec `serve-webapp.sh` et `run.sh`, la clé SSH de l'hôte (`~/.ssh`, clé +
known_hosts) est montée automatiquement en lecture seule dans le conteneur ;
avec `docker compose`, le montage équivalent est à décommenter dans
`docker-compose.webapp.yml` (voir l'option c ci-dessous). Le wrapper local
`ssh` (agent forwarding) simplifie ces connexions.
`docker-compose.webapp.yml` (voir l'option c ci-dessous).
#### Wrapper `ssh` (déploiement depuis le poste de pilotage)
Le poste de pilotage (agent Crush) interdit l'appel `ssh` direct : le wrapper
`ssh`, créé une fois (puis `chmod +x ssh`),
fournit l'accès autorisé avec transfert d'agent (`-A`) — les `git pull`
distants utilisent la clé locale — et refuse toute interaction (BatchMode) :
```bash
#!/bin/bash
set -euo pipefail
HOST="${1:-192.168.3.10}" # machine webapp par défaut (le Pi)
shift || true
exec ssh -A -o BatchMode=yes -o ConnectTimeout=5 \
-o StrictHostKeyChecking=accept-new "$HOST" "$@"
```
Usage : `ssh` (Pi par défaut), `ssh <hôte> [commande]`. Mise à jour
complète du Pi (checkout git en `/srv/lidar_rendu`, avec
l'override Traefik — jamais `serve-webapp.sh` en prod) :
```bash
ssh 192.168.3.10 "cd /srv/lidar_rendu && git pull && \
docker compose -f docker-compose.webapp.yml -f docker-compose.webapp.override.yml up -d --build"
```
### 3. Configurer et lancer