From 3e74478f7bd170136d856f04068a2924587e207c Mon Sep 17 00:00:00 2001 From: Poulpe Date: Tue, 21 Apr 2026 07:51:54 +0000 Subject: [PATCH] deploy: fix DEPLOY.md path, add .gitignore entries --- .gitignore | 12 ++++++------ DEPLOY.md | 26 +++++++++++++++----------- 2 files changed, 21 insertions(+), 17 deletions(-) diff --git a/.gitignore b/.gitignore index 4ba1f62..c276755 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1,10 @@ -node_modules/ -dist/ -.astro/ -.DS_Store *.log +.DS_Store +.astro/ .env -.env.local .env.*.local -.vscode/ +.env.local .idea/ +.vscode/ +dist/ +node_modules/ diff --git a/DEPLOY.md b/DEPLOY.md index f384771..885f3ef 100644 --- a/DEPLOY.md +++ b/DEPLOY.md @@ -7,11 +7,15 @@ Ce document décrit comment publier le site vitrine NowYouSea sur la VM - `node` ≥ 20 et `npm` installés en local - Accès SSH à `floppyrj45@192.168.0.82` -- Le dossier `/srv/www/nowyousea/` existe sur la VM cible et appartient à `floppyrj45` - (ou est accessible en écriture). Si ce n'est pas le cas : +- Le dossier **`/docker/caddy/www/nowyousea/`** existe sur la VM cible et appartient + à `floppyrj45`. **⚠ Piège :** le container caddy bind-mount le chemin host + `/docker/caddy/www` sur `/srv/www` (chemin interne). La config Caddy dit donc + `root * /srv/www/nowyousea` (chemin container) mais le rsync réel se fait vers + `/docker/caddy/www/nowyousea/` sur l'hôte. Ne pas confondre avec `/srv/www/` + directement (existe sur l'hôte mais n'est PAS servi par Caddy). ```bash -ssh floppyrj45@192.168.0.82 'sudo mkdir -p /srv/www/nowyousea && sudo chown -R floppyrj45:floppyrj45 /srv/www/nowyousea' +ssh floppyrj45@192.168.0.82 'sudo mkdir -p /docker/caddy/www/nowyousea && sudo chown -R floppyrj45:floppyrj45 /docker/caddy/www/nowyousea' ``` - Caddy tourne sur la VM `.82` et expose déjà le domaine @@ -45,12 +49,12 @@ Commande à copier-coller (dry-run d'abord, puis réel) : # Dry-run — affiche ce qui serait copié, ne touche à rien rsync -avz --delete --dry-run \ ./dist/ \ - floppyrj45@192.168.0.82:/srv/www/nowyousea/ + floppyrj45@192.168.0.82:/docker/caddy/www/nowyousea/ # Réel rsync -avz --delete \ ./dist/ \ - floppyrj45@192.168.0.82:/srv/www/nowyousea/ + floppyrj45@192.168.0.82:/docker/caddy/www/nowyousea/ ``` Notes : @@ -65,7 +69,7 @@ Script one-liner pratique (build + push) : ```bash npm run build && \ -rsync -avz --delete ./dist/ floppyrj45@192.168.0.82:/srv/www/nowyousea/ +rsync -avz --delete ./dist/ floppyrj45@192.168.0.82:/docker/caddy/www/nowyousea/ ``` ## 4. Configuration Caddy @@ -79,7 +83,7 @@ handle /nowyousea { redir /nowyousea/ 307 } handle_path /nowyousea/* { - root * /srv/www/nowyousea + root * /docker/caddy/www/nowyousea file_server { index index.html } @@ -91,9 +95,9 @@ Explications : - `handle /nowyousea` : si un visiteur arrive sans slash final, il est redirigé vers `/nowyousea/` pour que les liens relatifs fonctionnent. - `handle_path /nowyousea/*` : retire le préfixe `/nowyousea/` avant de servir - les fichiers depuis `/srv/www/nowyousea/`. Cela s'aligne exactement avec le + les fichiers depuis `/docker/caddy/www/nowyousea/`. Cela s'aligne exactement avec le `base: '/nowyousea/'` de la config Astro : les assets sont produits avec - `href="/nowyousea/_astro/..."` et servis depuis `/srv/www/nowyousea/_astro/`. + `href="/nowyousea/_astro/..."` et servis depuis `/docker/caddy/www/nowyousea/_astro/`. - `file_server { index index.html }` : sert `index.html` par défaut à la racine. Après modification du Caddyfile : @@ -120,14 +124,14 @@ Avant un déploiement risqué, faire un snapshot : ```bash ssh floppyrj45@192.168.0.82 \ - 'cp -a /srv/www/nowyousea /srv/www/nowyousea.bak.$(date +%Y%m%d-%H%M%S)' + 'cp -a /docker/caddy/www/nowyousea /docker/caddy/www/nowyousea.bak.$(date +%Y%m%d-%H%M%S)' ``` Pour restaurer : ```bash ssh floppyrj45@192.168.0.82 \ - 'rsync -a --delete /srv/www/nowyousea.bak.YYYYMMDD-HHMMSS/ /srv/www/nowyousea/' + 'rsync -a --delete /docker/caddy/www/nowyousea.bak.YYYYMMDD-HHMMSS/ /docker/caddy/www/nowyousea/' ``` ---