dev4: Nginx reverse proxy /lecoffre + correctifs; front prod build; ajout NODE_OPTIONS; docs & tests; fix 502
This commit is contained in:
parent
9d4189927d
commit
66ebb63ce8
52
.env.exemple
52
.env.exemple
@ -1,13 +1,14 @@
|
|||||||
# Variables d'environnement pour l'application back-end
|
#Variables d'environnement pour l'application back-end
|
||||||
|
|
||||||
# Configuration IDNOT
|
# Configuration IDNOT
|
||||||
IDNOT_ANNUARY_BASE_URL=
|
IDNOT_ANNUARY_BASE_URL=https://qual-api.notaires.fr/annuaire
|
||||||
IDNOT_API_KEY=
|
IDNOT_API_KEY=
|
||||||
IDNOT_CLIENT_ID=
|
IDNOT_CLIENT_ID=
|
||||||
IDNOT_CLIENT_SECRET=
|
IDNOT_CLIENT_SECRET=
|
||||||
IDNOT_REDIRECT_URI=
|
# IDNOT_REDIRECT_URI=http://local.4nkweb.com:3000/authorized-client
|
||||||
IDNOT_TOKEN_URL=
|
IDNOT_REDIRECT_URI=https://dev4.4nkweb.com/lecofre/authorized-client
|
||||||
IDNOT_API_BASE_URL=
|
IDNOT_TOKEN_URL=https://qual-connexion.idnot.fr/user/IdPOAuth2/token/idnot_idp_v1
|
||||||
|
IDNOT_API_BASE_URL=https://qual-api.notaires.fr/annuaire
|
||||||
|
|
||||||
# Configuration OVH
|
# Configuration OVH
|
||||||
OVH_APP_KEY=
|
OVH_APP_KEY=
|
||||||
@ -16,7 +17,7 @@ OVH_CONSUMER_KEY=
|
|||||||
OVH_SMS_SERVICE_NAME=
|
OVH_SMS_SERVICE_NAME=
|
||||||
|
|
||||||
# Configuration SMS Factor
|
# Configuration SMS Factor
|
||||||
SMS_FACTOR_TOKEN=
|
SMS_FACTOR_TOKEN=.
|
||||||
|
|
||||||
# Configuration Mailchimp
|
# Configuration Mailchimp
|
||||||
MAILCHIMP_API_KEY=
|
MAILCHIMP_API_KEY=
|
||||||
@ -27,34 +28,39 @@ MAILCHIMP_LIST_ID=
|
|||||||
STRIPE_SECRET_KEY=
|
STRIPE_SECRET_KEY=
|
||||||
STRIPE_WEBHOOK_SECRET=
|
STRIPE_WEBHOOK_SECRET=
|
||||||
STRIPE_STANDARD_SUBSCRIPTION_PRICE_ID=
|
STRIPE_STANDARD_SUBSCRIPTION_PRICE_ID=
|
||||||
STRIPE_STANDARD_ANNUAL_SUBSCRIPTION_PRICE_ID=
|
STRIPE_STANDARD_ANNUAL_SUBSCRIPTION_PRICE_ID=price_P9NsRP5xh1u9BqSFgkUDbQY
|
||||||
STRIPE_UNLIMITED_SUBSCRIPTION_PRICE_ID=
|
STRIPE_UNLIMITED_SUBSCRIPTION_PRICE_ID=
|
||||||
STRIPE_UNLIMITED_ANNUAL_SUBSCRIPTION_PRICE_ID=
|
STRIPE_UNLIMITED_ANNUAL_SUBSCRIPTION_PRICE_ID=
|
||||||
|
|
||||||
# Configuration serveur
|
# Configuration serveur
|
||||||
APP_HOST=
|
APP_HOST=http://localhost:3000
|
||||||
PORT=
|
# API_BASE_URL=https://demo.4nkweb.com/back
|
||||||
API_BASE_URL=
|
API_BASE_URL=https://dev4.4nkweb.com/back
|
||||||
DEFAULT_STORAGE=
|
# DEFAULT_STORAGE=https://demo.4nkweb.com/storage
|
||||||
|
DEFAULT_STORAGE=https://dev4.4nkweb.com/storage
|
||||||
|
|
||||||
# Variables d'environnement pour l'application front-end
|
# Variables d'environnement pour l'application front-end
|
||||||
NEXT_PUBLIC_4NK_URL=
|
# NEXT_PUBLIC_4NK_URL=http://demo.4nkweb.com/
|
||||||
NEXT_PUBLIC_FRONT_APP_HOST=
|
NEXT_PUBLIC_4NK_URL=https://dev4.4nkweb.com/
|
||||||
NEXT_PUBLIC_IDNOT_BASE_URL=
|
# NEXT_PUBLIC_FRONT_APP_HOST=https://demo.4nkweb.com
|
||||||
NEXT_PUBLIC_IDNOT_AUTHORIZE_ENDPOINT=
|
NEXT_PUBLIC_FRONT_APP_HOST=https://dev4.4nkweb.com/lecoffre
|
||||||
|
NEXT_PUBLIC_IDNOT_BASE_URL=https://qual-connexion.idnot.fr
|
||||||
|
NEXT_PUBLIC_IDNOT_AUTHORIZE_ENDPOINT=/IdPOAuth2/authorize/idnot_idp_v1
|
||||||
NEXT_PUBLIC_IDNOT_CLIENT_ID=
|
NEXT_PUBLIC_IDNOT_CLIENT_ID=
|
||||||
NEXT_PUBLIC_BACK_API_PROTOCOL=
|
|
||||||
NEXT_PUBLIC_ANK_BASE_REDIRECT_URI=
|
|
||||||
|
|
||||||
NEXT_PUBLIC_BACK_API_PROTOCOL=http
|
NEXT_PUBLIC_BACK_API_PROTOCOL=http
|
||||||
NEXT_PUBLIC_BACK_API_HOST=localhost
|
NEXT_PUBLIC_BACK_API_HOST=localhost
|
||||||
NEXT_PUBLIC_BACK_API_PORT=8080
|
NEXT_PUBLIC_BACK_API_PORT=8080
|
||||||
NEXT_PUBLIC_BACK_API_ROOT_URL=/api
|
NEXT_PUBLIC_BACK_API_ROOT_URL=/api
|
||||||
NEXT_PUBLIC_BACK_API_VERSION=/v1
|
NEXT_PUBLIC_BACK_API_VERSION=/v1
|
||||||
|
# NEXT_PUBLIC_ANK_BASE_REDIRECT_URI='http://local.4nkweb.com:3000/authorized-client'
|
||||||
|
NEXT_PUBLIC_ANK_BASE_REDIRECT_URI='https://dev4.4nkweb.com/lecoffre/authorized-client'
|
||||||
|
|
||||||
#WS
|
# WS
|
||||||
RELAY_URLS=ws://sdk_relay:8090
|
# RELAY_URLS=wss://demo.4nkweb.com/ws
|
||||||
SIGNER_WS_URL=https://demo.4nkweb.com/signer/
|
RELAY_URLS=wss://dev4.4nkweb.com/ws
|
||||||
|
# SIGNER_WS_URL=https://dev4.4nkweb.com/signer/
|
||||||
|
SIGNER_WS_URL=https://dev4.4nkweb.com/signer/
|
||||||
|
|
||||||
#IHM URLS
|
# IHM URLS
|
||||||
VITE_BOOTSTRAPURL=https://dev4.4nkweb.com/relay
|
# VITE_BOOTSTRAPURL=http://sdk_relay:8090/
|
||||||
|
VITE_BOOTSTRAPURL=https://dev4.4nkweb.com/ws
|
@ -30,13 +30,28 @@ server {
|
|||||||
location /lecoffre/ {
|
location /lecoffre/ {
|
||||||
proxy_pass http://127.0.0.1:3000/;
|
proxy_pass http://127.0.0.1:3000/;
|
||||||
include /etc/nginx/proxy_params;
|
include /etc/nginx/proxy_params;
|
||||||
# Sub-filter to ensure assets/links are prefixed with /lecoffre
|
proxy_set_header Host $host;
|
||||||
proxy_set_header Accept-Encoding "";
|
proxy_set_header X-Forwarded-Proto http;
|
||||||
sub_filter_types text/html application/javascript text/css;
|
proxy_set_header X-Forwarded-Host $host;
|
||||||
sub_filter_once off;
|
proxy_set_header X-Forwarded-Prefix /lecoffre;
|
||||||
sub_filter 'href="/' 'href="/lecoffre/';
|
proxy_read_timeout 300;
|
||||||
sub_filter 'src="/' 'src="/lecoffre/';
|
}
|
||||||
sub_filter 'content="/' 'content="/lecoffre/';
|
|
||||||
|
# Next.js assets and HMR under basePath
|
||||||
|
location /lecoffre/_next/webpack-hmr {
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection "upgrade";
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_set_header X-Forwarded-Proto http;
|
||||||
|
proxy_buffering off;
|
||||||
|
proxy_pass http://127.0.0.1:3000/_next/webpack-hmr;
|
||||||
|
proxy_read_timeout 600s;
|
||||||
|
}
|
||||||
|
|
||||||
|
location /lecoffre/_next/ {
|
||||||
|
proxy_pass http://127.0.0.1:3000/_next/;
|
||||||
|
include /etc/nginx/proxy_params;
|
||||||
proxy_read_timeout 300;
|
proxy_read_timeout 300;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -78,6 +78,7 @@ services:
|
|||||||
max-size: "10m"
|
max-size: "10m"
|
||||||
max-file: "3"
|
max-file: "3"
|
||||||
environment:
|
environment:
|
||||||
|
- NODE_OPTIONS=--max-old-space-size=2048
|
||||||
- HOME=/home/bitcoin
|
- HOME=/home/bitcoin
|
||||||
- RUST_LOG=DEBUG
|
- RUST_LOG=DEBUG
|
||||||
entrypoint: >
|
entrypoint: >
|
||||||
@ -112,6 +113,9 @@ services:
|
|||||||
container_name: lecoffre-front
|
container_name: lecoffre-front
|
||||||
env_file:
|
env_file:
|
||||||
- .env
|
- .env
|
||||||
|
environment:
|
||||||
|
- NODE_ENV=production
|
||||||
|
- NODE_OPTIONS=--max-old-space-size=2048
|
||||||
ports:
|
ports:
|
||||||
- "3000:3000"
|
- "3000:3000"
|
||||||
networks:
|
networks:
|
||||||
@ -121,6 +125,7 @@ services:
|
|||||||
labels:
|
labels:
|
||||||
- "com.centurylinklabs.watchtower.enable=true"
|
- "com.centurylinklabs.watchtower.enable=true"
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
command: ["sh", "-lc", "npm run build && npm run start"]
|
||||||
|
|
||||||
ihm_client:
|
ihm_client:
|
||||||
image: git.4nkweb.com/4nk/ihm_client:dev
|
image: git.4nkweb.com/4nk/ihm_client:dev
|
||||||
|
17
docs/DEPLOIEMENT_dev4.md
Normal file
17
docs/DEPLOIEMENT_dev4.md
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
# Déploiement dev4.4nkweb.com
|
||||||
|
|
||||||
|
- Nginx: vhost dev4.4nkweb.com HTTP et HTTPS, reverse proxy:
|
||||||
|
- /signer vers 3001
|
||||||
|
- / vers ihm_client sur 3003
|
||||||
|
- /lecoffre vers lecoffre-front sur 3000
|
||||||
|
- /back vers lecoffre-back sur 8080
|
||||||
|
- /blindbit vers blindbit sur 8000
|
||||||
|
- /storage vers sdk_storage sur 8081
|
||||||
|
- /ws WebSocket relay
|
||||||
|
- Certificats: Lets Encrypt
|
||||||
|
- Next.js: basePath /lecoffre, build production, NODE_OPTIONS max-old-space-size 2048
|
||||||
|
- Extraits .env pertinents:
|
||||||
|
- RELAY_URLS wss://dev4.4nkweb.com/ws
|
||||||
|
- SIGNER_WS_URL https://dev4.4nkweb.com/signer/
|
||||||
|
- VITE_BOOTSTRAPURL https://dev4.4nkweb.com/ws
|
||||||
|
- Correction 502: build Next terminé, Nginx OK
|
9
docs/REX_502_lecoffre.md
Normal file
9
docs/REX_502_lecoffre.md
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# REX technique: 502 sur /lecoffre
|
||||||
|
|
||||||
|
- Symptôme: 502 Bad Gateway via Nginx, recv failed
|
||||||
|
- Cause: build Next.js initial non terminé; mémoire Node insuffisante
|
||||||
|
- Actions:
|
||||||
|
- Ajout NODE_OPTIONS max-old-space-size 2048 au service lecoffre-front
|
||||||
|
- Relance propre du conteneur (stop, rm, up)
|
||||||
|
- Vérification présence .next et démarrage next start
|
||||||
|
- Test via curl: HTTP 200 sur /lecoffre
|
12
tests/smoke_dev4.md
Normal file
12
tests/smoke_dev4.md
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
# Tests de fumée dev4
|
||||||
|
|
||||||
|
HTTP/HTTPS
|
||||||
|
- GET / (ihm_client) attend 200
|
||||||
|
- GET /lecoffre/ attend 200
|
||||||
|
- GET /back/health attend 200
|
||||||
|
- GET /storage/health attend 200
|
||||||
|
WebSocket
|
||||||
|
- wss://dev4.4nkweb.com/ws handshake OK
|
||||||
|
Nginx
|
||||||
|
- Certificats valides
|
||||||
|
- Pas derreurs critiques dans error.log
|
Loading…
x
Reference in New Issue
Block a user