fix(deploy): écrit les paramètres DB dans .env au démarrage
Un DB_PASSWORD vide dans .env (issu de .env.example) masquait la valeur du conteneur -> 'no password supplied'. L'entrypoint force désormais DB_HOST/PORT/ DATABASE/USERNAME/PASSWORD dans .env (valeurs par défaut alignées sur postgres).
This commit is contained in:
@@ -3,10 +3,27 @@ set -e
|
|||||||
|
|
||||||
cd /app
|
cd /app
|
||||||
|
|
||||||
# Laravel a besoin d'un fichier .env (les variables d'env du conteneur,
|
# Laravel a besoin d'un fichier .env.
|
||||||
# définies par Coolify, ont la priorité sur ce fichier).
|
|
||||||
[ -f .env ] || cp .env.example .env
|
[ -f .env ] || cp .env.example .env
|
||||||
|
|
||||||
|
# Aligne les paramètres de connexion à la base DANS le .env (avec valeurs par
|
||||||
|
# défaut). Indispensable : un DB_PASSWORD vide dans .env masquait la valeur du
|
||||||
|
# conteneur -> "fe_sendauth: no password supplied".
|
||||||
|
: "${DB_HOST:=postgres}"
|
||||||
|
: "${DB_PORT:=5432}"
|
||||||
|
: "${DB_DATABASE:=cesizen}"
|
||||||
|
: "${DB_USERNAME:=cesizen}"
|
||||||
|
: "${DB_PASSWORD:=cesizen_secret_change_me}"
|
||||||
|
export DB_CONNECTION DB_HOST DB_PORT DB_DATABASE DB_USERNAME DB_PASSWORD
|
||||||
|
sed -i \
|
||||||
|
-e "s|^DB_CONNECTION=.*|DB_CONNECTION=pgsql|" \
|
||||||
|
-e "s|^DB_HOST=.*|DB_HOST=${DB_HOST}|" \
|
||||||
|
-e "s|^DB_PORT=.*|DB_PORT=${DB_PORT}|" \
|
||||||
|
-e "s|^DB_DATABASE=.*|DB_DATABASE=${DB_DATABASE}|" \
|
||||||
|
-e "s|^DB_USERNAME=.*|DB_USERNAME=${DB_USERNAME}|" \
|
||||||
|
-e "s|^DB_PASSWORD=.*|DB_PASSWORD=${DB_PASSWORD}|" \
|
||||||
|
.env
|
||||||
|
|
||||||
# --- APP_KEY ---
|
# --- APP_KEY ---
|
||||||
# Si fournie (Coolify) : on la force dans .env. Sinon : on en génère une et on
|
# Si fournie (Coolify) : on la force dans .env. Sinon : on en génère une et on
|
||||||
# l'EXPORTE, sinon une variable d'env vide masquerait la valeur du .env
|
# l'EXPORTE, sinon une variable d'env vide masquerait la valeur du .env
|
||||||
|
|||||||
Reference in New Issue
Block a user