Compare commits
No commits in common. "24aa2e95db0f4f286869eabee2d54dfce77508ac" and "86a75bd47b6a4908b3f88067996aa5393afb75ca" have entirely different histories.
24aa2e95db
...
86a75bd47b
3 changed files with 4 additions and 38 deletions
16
.env.example
16
.env.example
|
|
@ -1,16 +0,0 @@
|
||||||
# Copier ce fichier en ".env" pour du dev local avec `docker compose` (le vrai ".env" est
|
|
||||||
# gitignore, jamais committe). En production (Coolify), NE PAS utiliser ce fichier : definir ces
|
|
||||||
# memes variables dans l'onglet "Environment Variables" de l'application Coolify.
|
|
||||||
|
|
||||||
# --- Authentification HTTP Basic (UI + API) ---
|
|
||||||
# Si absentes, l'authentification est desactivee (pratique en dev, jamais en prod).
|
|
||||||
# Generer un hash pour un nouveau mot de passe :
|
|
||||||
# node -e "console.log(require('bcryptjs').hashSync('VOTRE_MOT_DE_PASSE', 10))"
|
|
||||||
AUTH_USERNAME=nico
|
|
||||||
AUTH_PASSWORD_HASH=
|
|
||||||
|
|
||||||
# --- Parametres optionnels (defauts raisonnables si non definis, voir src/config.ts) ---
|
|
||||||
# PORT=3000
|
|
||||||
# MAX_UPLOAD_MB=2048
|
|
||||||
# STATS_SAMPLE_CAP=50000
|
|
||||||
# CC_TIMEOUT_MS=600000
|
|
||||||
14
CLAUDE.md
14
CLAUDE.md
|
|
@ -243,20 +243,6 @@ manquantes), mais pourraient etre simplifies.
|
||||||
fichiers statiques servis par `ServeStaticModule` (pas seulement les routes `@Controller`), malgre
|
fichiers statiques servis par `ServeStaticModule` (pas seulement les routes `@Controller`), malgre
|
||||||
le fait que `ServeStaticModule` s'enregistre via le systeme de modules Nest plutot que directement
|
le fait que `ServeStaticModule` s'enregistre via le systeme de modules Nest plutot que directement
|
||||||
sur l'instance `app`. Desactivable si `AUTH_USERNAME`/`AUTH_PASSWORD_HASH` absents (dev local).
|
sur l'instance `app`. Desactivable si `AUTH_USERNAME`/`AUTH_PASSWORD_HASH` absents (dev local).
|
||||||
- **Piege `.env` + hash bcrypt** : un hash bcrypt contient des `$` (`$2a$10$eg...`). Docker Compose
|
|
||||||
interprete `$` dans un fichier `.env` comme le debut d'une substitution de variable — sans
|
|
||||||
echappement, `AUTH_PASSWORD_HASH=$2a$10$eg...` est tronque silencieusement a `$2a$10.` (verifie via
|
|
||||||
`docker compose config` : la valeur affichee etait bien tronquee, le reste du hash disparaissait
|
|
||||||
sans aucune erreur). **Fix** : dans `.env`, doubler chaque `$` du hash (`$$2a$$10$$eg...`) ;
|
|
||||||
`docker compose` les collapse en `$` uniques au runtime (reverifie via `docker exec ...
|
|
||||||
printenv AUTH_PASSWORD_HASH` : le conteneur recoit bien le hash original complet, un seul `$`).
|
|
||||||
Documente dans `.env.example`. Coolify (qui n'utilise pas de fichier `.env` mais son propre
|
|
||||||
formulaire "Environment Variables") n'a probablement pas ce probleme puisqu'il n'y a pas de fichier
|
|
||||||
`.env` a parser — a confirmer au premier deploiement avec l'auth active.
|
|
||||||
- **Autre piege distinct rencontre en testant** : apres `docker compose up -d` (sans `--build`),
|
|
||||||
le conteneur peut tourner sur une **image cachee obsolete** ne contenant pas les derniers
|
|
||||||
changements de code (auth absente, etc.) sans aucun avertissement. Toujours utiliser
|
|
||||||
`docker compose up -d --build` en local pour etre sur de tester le code courant.
|
|
||||||
|
|
||||||
## Constantes du pipeline (voir `src/config.ts`)
|
## Constantes du pipeline (voir `src/config.ts`)
|
||||||
|
|
||||||
|
|
|
||||||
12
README.md
12
README.md
|
|
@ -56,16 +56,12 @@ AUTH_USERNAME=nico
|
||||||
AUTH_PASSWORD_HASH=$2a$10$... # sortie de la commande ci-dessus
|
AUTH_PASSWORD_HASH=$2a$10$... # sortie de la commande ci-dessus
|
||||||
```
|
```
|
||||||
|
|
||||||
En local avec `docker compose`, un fichier `.env` (gitignore, jamais committe) a la racine du repo
|
En local avec `docker compose`, un fichier `.env` (gitignore) a la racine du repo fonctionne aussi :
|
||||||
fonctionne aussi — `docker compose` le charge automatiquement :
|
|
||||||
|
|
||||||
```bash
|
|
||||||
cp .env.example .env
|
|
||||||
# puis editer .env avec un vrai AUTH_PASSWORD_HASH genere via la commande ci-dessus
|
|
||||||
```
|
```
|
||||||
|
AUTH_USERNAME=nico
|
||||||
[.env.example](.env.example) est committe et documente toutes les variables disponibles ; `.env`
|
AUTH_PASSWORD_HASH=$2a$10$...
|
||||||
(vos vraies valeurs) ne l'est jamais.
|
```
|
||||||
|
|
||||||
## Deploiement Coolify
|
## Deploiement Coolify
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue