Rattache l'app au réseau externe nginx_default
- Le service app rejoint le réseau externe nginx_default (nom configurable via PROXY_NETWORK) avec l'alias stable « sbc-app » pour l'upstream nginx (proxy_pass http://sbc-app:3000) - La base de données reste sur le réseau interne de la stack uniquement - README : section reverse-proxy (création du réseau, TRUST_PROXY, COOKIE_SECURE, en-têtes à transmettre) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Fkg15RCxNgUys4ru73He2o
This commit is contained in:
2 files changed
+30
No files matched your search
@@ -24,6 +24,22 @@ Navigateur ──> app (Express :8321) ──> db (PostgreSQL, 127.0.0.1:58412)
|
|||||||
Le mapping PostgreSQL est lié à `127.0.0.1` : la base reste inaccessible depuis
|
Le mapping PostgreSQL est lié à `127.0.0.1` : la base reste inaccessible depuis
|
||||||
le réseau. Supprimez la section `ports:` du service `db` pour la fermer totalement.
|
le réseau. Supprimez la section `ports:` du service `db` pour la fermer totalement.
|
||||||
|
|
||||||
|
### Reverse-proxy nginx existant
|
||||||
|
|
||||||
|
Le conteneur `app` est aussi rattaché au réseau externe `nginx_default`
|
||||||
|
(configurable via `PROXY_NETWORK`) avec l'alias **`sbc-app`**. Depuis votre
|
||||||
|
stack nginx, pointez simplement l'upstream vers :
|
||||||
|
|
||||||
|
```nginx
|
||||||
|
proxy_pass http://sbc-app:3000;
|
||||||
|
```
|
||||||
|
|
||||||
|
Ce réseau doit exister avant le déploiement (`docker network create nginx_default`
|
||||||
|
s'il manque). Derrière nginx en HTTPS, passez `TRUST_PROXY=true` et
|
||||||
|
`COOKIE_SECURE=true`, et transmettez les en-têtes `Host`/`X-Forwarded-*`
|
||||||
|
(`proxy_set_header Host $http_host;`). La base de données, elle, reste hors du
|
||||||
|
réseau du proxy.
|
||||||
|
|
||||||
- **Frontend** : React 18 + Vite + React Router — reproduction fidèle de la maquette
|
- **Frontend** : React 18 + Vite + React Router — reproduction fidèle de la maquette
|
||||||
(`SLUC Business Club.dc.html`).
|
(`SLUC Business Club.dc.html`).
|
||||||
- **Backend** : Express, `pg` (requêtes paramétrées), `zod` (validation), `bcryptjs`
|
- **Backend** : Express, `pg` (requêtes paramétrées), `zod` (validation), `bcryptjs`
|
||||||
|
|||||||
@@ -61,6 +61,12 @@ services:
|
|||||||
- uploads:/data/uploads
|
- uploads:/data/uploads
|
||||||
ports:
|
ports:
|
||||||
- "${APP_PORT:-8321}:3000"
|
- "${APP_PORT:-8321}:3000"
|
||||||
|
networks:
|
||||||
|
default:
|
||||||
|
proxy:
|
||||||
|
aliases:
|
||||||
|
# Stable name for the nginx upstream: proxy_pass http://sbc-app:3000;
|
||||||
|
- sbc-app
|
||||||
depends_on:
|
depends_on:
|
||||||
db:
|
db:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
@@ -77,6 +83,14 @@ services:
|
|||||||
timeout: 5s
|
timeout: 5s
|
||||||
retries: 6
|
retries: 6
|
||||||
|
|
||||||
|
networks:
|
||||||
|
default:
|
||||||
|
# Existing network of the nginx reverse-proxy stack. Create it first if it
|
||||||
|
# does not exist: docker network create nginx_default
|
||||||
|
proxy:
|
||||||
|
external: true
|
||||||
|
name: ${PROXY_NETWORK:-nginx_default}
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
db_data:
|
db_data:
|
||||||
uploads:
|
uploads:
|
||||||
Reference in new issue
Block a user