fix(admin): alias réseau dédié pour éviter la collision DNS prod/dev sur "api"
Root cause du 404 intermittent : les stacks prod et dev déclarent tous les deux un service nommé "api" attaché au même réseau externe coolify. Docker DNS répond aléatoirement avec l'IP du conteneur prod OU dev pour le nom "api" — quand admin/nginx tombait sur le mauvais conteneur (inaccessible depuis cet environnement), ça donnait "connect() failed: Connection refused" puis 404 côté client. Le resolver dynamique (commit précédent) ne corrige pas cette collision, il la rend juste plus visible/intermittente. Fix : alias réseau unique par environnement (bm-api-internal en prod, dev-api-internal en dev) sur le service api, et apps/admin/Dockerfile prend un ARG API_UPSTREAM substitué par sed dans nginx.conf au build, pointant vers l'alias correspondant. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
def2b1214f
commit
10ab0055d5
3 changed files with 12 additions and 2 deletions
|
|
@ -1,3 +1,5 @@
|
|||
FROM nginx:alpine
|
||||
ARG API_UPSTREAM=http://api:3000
|
||||
COPY site/ /usr/share/nginx/html
|
||||
COPY nginx.conf /etc/nginx/conf.d/default.conf
|
||||
RUN sed -i "s|http://api:3000|${API_UPSTREAM}|g" /etc/nginx/conf.d/default.conf
|
||||
|
|
|
|||
|
|
@ -85,7 +85,9 @@ services:
|
|||
ADMIN_SEED_USERNAME: ${ADMIN_SEED_USERNAME}
|
||||
ADMIN_SEED_PASSWORD_HASH: ${ADMIN_SEED_PASSWORD_HASH}
|
||||
networks:
|
||||
- coolify
|
||||
coolify:
|
||||
aliases:
|
||||
- dev-api-internal
|
||||
labels:
|
||||
- traefik.enable=true
|
||||
- traefik.docker.network=coolify
|
||||
|
|
@ -98,6 +100,8 @@ services:
|
|||
admin:
|
||||
build:
|
||||
context: apps/admin
|
||||
args:
|
||||
API_UPSTREAM: http://dev-api-internal:3000
|
||||
networks:
|
||||
- coolify
|
||||
labels:
|
||||
|
|
|
|||
|
|
@ -57,7 +57,9 @@ services:
|
|||
ADMIN_SEED_USERNAME: ${ADMIN_SEED_USERNAME}
|
||||
ADMIN_SEED_PASSWORD_HASH: ${ADMIN_SEED_PASSWORD_HASH}
|
||||
networks:
|
||||
- coolify
|
||||
coolify:
|
||||
aliases:
|
||||
- bm-api-internal
|
||||
labels:
|
||||
- traefik.enable=true
|
||||
- traefik.docker.network=coolify
|
||||
|
|
@ -70,6 +72,8 @@ services:
|
|||
admin:
|
||||
build:
|
||||
context: apps/admin
|
||||
args:
|
||||
API_UPSTREAM: http://bm-api-internal:3000
|
||||
networks:
|
||||
- coolify
|
||||
labels:
|
||||
|
|
|
|||
Loading…
Reference in a new issue