3.5 KiB
Objet
Matrice des variables d’environnement pour lecoffre-front
, lecoffre-back-mini
et orchestrations lecoffre_node
, avec cohérence Nginx/basePath.
Variables côté Front (Next.js)
-
Exposition:
NEXT_PUBLIC_*
vianext.config.js
(env/publicRuntimeConfig/serverRuntimeConfig) -
Consommation:
src/front/Config/VariablesFront.ts
et services API -
NEXT_PUBLIC_BACK_API_PROTOCOL: protocole back (ex:
http
) -
NEXT_PUBLIC_BACK_API_HOST: hôte back (ex:
127.0.0.1
oudev4.4nkweb.com
) -
NEXT_PUBLIC_BACK_API_PORT: port back (ex:
8080
) -
NEXT_PUBLIC_BACK_API_ROOT_URL: préfixe API (ex:
/api
) -
NEXT_PUBLIC_BACK_API_VERSION: version API (ex:
/v1
) -
NEXT_PUBLIC_FRONT_APP_HOST: URL publique du front (utilisée pour ID.not redirect)
-
NEXT_PUBLIC_FRONT_APP_PORT: port front si nécessaire
-
NEXT_PUBLIC_IDNOT_AUTHORIZE_ENDPOINT: endpoint authorize (ex:
/user/auth
) -
NEXT_PUBLIC_IDNOT_CLIENT_ID: client_id ID.not
-
NEXT_PUBLIC_IDNOT_BASE_URL: base URL ID.not
-
NEXT_PUBLIC_IDNOT_REDIRECT_URI: redirect URI explicite; fallback vers
${FRONT_APP_HOST}/authorized-client
-
NEXT_PUBLIC_DOCAPOSTE_API_URL: base API Docaposte
-
NEXT_PUBLIC_HOTJAR_SITE_ID / NEXT_PUBLIC_HOTJAR_VERSION: télémétrie
-
NEXT_PUBLIC_4NK_URL / NEXT_PUBLIC_4NK_IFRAME_URL: intégrations 4NK
-
NEXT_PUBLIC_API_URL: éventuellement raccourci général d’API
-
NEXT_PUBLIC_DEFAULT_VALIDATOR_ID / NEXT_PUBLIC_DEFAULT_STORAGE_URLS: valeurs par défaut SDK
Variables côté Back (Express)
- PORT: port d’écoute (défaut 8080)
- DEFAULT_STORAGE: URL de stockage par défaut (défaut
https://dev3.4nkweb.com/storage
) - APP_HOST: URL front (défaut
http://localhost:3000
) – utilisé aussi parstripe
- STRIPE_SECRET_KEY / STRIPE_WEBHOOK_SECRET
- IDNOT_CLIENT_ID / IDNOT_CLIENT_SECRET / IDNOT_REDIRECT_URI / IDNOT_TOKEN_URL
- IDNOT_API_KEY / IDNOT_API_BASE_URL / IDNOT_ANNUARY_BASE_URL
Orchestration Docker / Nginx (lecoffre_node)
- Compose publie:
lecoffre-back
:127.0.0.1:8080
(proxy Nginx/api/
et/back/
)lecoffre-front
:127.0.0.2:3004
(front Next.js)- Services SDK:
sdk_relay
(8090),sdk_signer
(3001),sdk_storage
(8081),blindbit
(8000)
- Nginx
dev4.4nkweb.com.conf
:/api/
→http://127.0.0.1:8080/api/
/back/(.*)
→http://127.0.0.1:8080/api/$1
/
→http://127.0.0.1:3003
(ihm_client)/lecoffre
et/lecoffre/
→http://127.0.0.2:3004/lecoffre/
/_next/
→http://127.0.0.2:3004/_next/
Cohérence basePath Nginx/Next
- Next.js
basePath: '/lecoffre'
(voirnext.config.js
) - Nginx proxy
/lecoffre
et/_next/
vers le front sur 3004 - Impacts: routes, assets statiques, liens internes doivent inclure le
basePath
Qui consomme quoi
- Front:
- API back:
NEXT_PUBLIC_BACK_API_*
utilisés parBaseApiService
,Auth
(IdNot), Admin APIs (Subscriptions, Stripe) - ID.not:
NEXT_PUBLIC_IDNOT_*
viaAuth
et composants de login - Télémétrie/Intégrations: Hotjar, Docaposte, 4NK
- API back:
- Back:
- ID.not:
IDNOT_*
(auth, user/office, annuaire) - Stripe:
STRIPE_*
(routes/subscriptions/*
, webhook) - Réseau front:
APP_HOST
pour callbacks/URLs
- ID.not:
- Nginx/Compose:
- Route HTTP publique et correspondances de ports/containers
Recommandations
- Aligner
APP_HOST
(back) avec l’URL publique réelle du front (incluant basePath dans les redirections si nécessaire) - Vérifier que
NEXT_PUBLIC_*
ne contiennent aucun secret - Centraliser un
.env
/CI par environnement (local/dev/staging/prod) et lister explicitement les valeurs attendues