Administration dans un conteneur Docker (Dockerfile, exemples compose et nginx) ; arrêt propre sur SIGTERM
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mf2kATMtqVABHSYdxJMnim
This commit is contained in:
1 parent
4852361ea6
commit
02473fafbf
6 files changed
+89
-8
No files matched your search
@@ -0,0 +1,29 @@
|
||||
# docker-compose.yml du site, avec l'administration RTG dans son propre conteneur.
|
||||
# Après une mise à jour de RTG : docker compose up -d --build rtg
|
||||
services:
|
||||
roadtrip:
|
||||
image: nginx:alpine
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- ouaibe_network
|
||||
volumes:
|
||||
- /Volumes/CLEROADTRIPS/Road-Trips:/usr/share/nginx/html:ro
|
||||
- ./nginx.conf:/etc/nginx/nginx.conf:ro
|
||||
labels:
|
||||
- traefik.enable=true
|
||||
- traefik.docker.network=ouaibe_network
|
||||
- traefik.http.routers.ouaibe_roadtrip.rule=Host(`roadtrip.ouaibe.fr`) || Host(`roadtrips.ouaibe.fr`)
|
||||
- traefik.http.routers.ouaibe_roadtrip.entrypoints=websecure
|
||||
|
||||
rtg:
|
||||
build: /Volumes/CLEROADTRIPS/RoadTripsGenerator
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- ouaibe_network
|
||||
volumes:
|
||||
- /Volumes:/Volumes # la clé, le LaCie… aux mêmes chemins que sur le Mac
|
||||
- ${HOME}/.config/rtg:/config/rtg # le mot de passe défini avec « rtg mot-de-passe »
|
||||
|
||||
networks:
|
||||
ouaibe_network:
|
||||
external: true
|
||||
@@ -1,15 +1,17 @@
|
||||
# Bloc à ajouter dans nginx.conf, à l'intérieur de « server { … } », quand le
|
||||
# site est servi par un conteneur nginx derrière Traefik (Traefik → nginx → RTG).
|
||||
# RTG tourne sur le Mac : rtg interface --proxy --prefixe /admin
|
||||
#
|
||||
# Dans docker-compose.yml, sous le service nginx, ajouter aussi :
|
||||
# extra_hosts:
|
||||
# - "host.docker.internal:host-gateway"
|
||||
|
||||
# « ^~ » : sinon une règle du type « location ~* \.(js|css|png)$ » déjà
|
||||
# présente dans nginx.conf prendrait les fichiers de l'interface pour ceux du site.
|
||||
location ^~ /admin/ {
|
||||
proxy_pass http://host.docker.internal:8765;
|
||||
# RTG dans le conteneur « rtg » (exemples/docker-compose.yml). Passer par
|
||||
# une variable laisse nginx démarrer même si ce conteneur est arrêté.
|
||||
resolver 127.0.0.11 valid=30s;
|
||||
set $rtg http://rtg:8765;
|
||||
proxy_pass $rtg;
|
||||
# RTG lancé à la main sur le Mac à la place : remplacer les trois lignes
|
||||
# ci-dessus par « proxy_pass http://host.docker.internal:8765; ».
|
||||
|
||||
proxy_set_header Host $host;
|
||||
# Traefik a déjà noté l'adresse du visiteur et le https : on les transmet tels quels.
|
||||
proxy_set_header X-Forwarded-For $http_x_forwarded_for;
|
||||
|
||||
Reference in new issue
Block a user