Geotrek-admin
Geotrek-admin copied to clipboard
Docker - dans le fichier .env En changeant uniquement ENV=dev par ENV=prod le style disparait
bonjour dans le fichier .env le passage de la variable ENV=dev à ENV=prod me pose problème, , le chargement du style disparait. Quelqu'un saurait il pourquoi?
avec ENV=dev

avec ENV=prod

fichier #########.env
GEOTREK_VERSION=latest SERVER_NAME=geotrekprod.lpo.fr ENV=prod POSTGRES_HOST=postgres POSTGRES_PORT=5432 POSTGRES_USER=geotrek POSTGRES_PASSWORD=######### POSTGRES_DB=geotrekdb WEB_PORT=8001 API_PORT=8002 POSTGRES_HOST_AUTH_METHOD=trust #COMPOSE_PROJECT_NAME=geotrek DOMAINS=geotrekprod.lpo.fr
fichier #########docker_compose.yml
version: "3" services:
postgres: image: postgis/postgis:11-2.5 env_file: - .env ports: - "${POSTGRES_PORT:-5432}:${POSTGRES_PORT:-5432}" volumes: - postgres:/var/lib/postgresql/data
memcached: image: memcached:1.5-alpine
redis: image: redis:5.0-alpine volumes: - redis:/data
convertit: image: makinacorpus/convertit:latest
screamshotter: image: makinacorpus/screamshotter:v2
celery: image: geotrekce/admin:${GEOTREK_VERSION:-latest} env_file: - .env volumes: - ./var:/opt/geotrek-admin/var depends_on: - memcached - redis - postgres user: ${UID:-0}:${GID:-0} command: celery -A geotrek worker -c 1
web: image: geotrekce/admin:${GEOTREK_VERSION:-latest} env_file: - .env ports: - "${WEB_PORT:-8001}:8000" volumes: - ./var:/opt/geotrek-admin/var depends_on: - memcached - redis - screamshotter - convertit - postgres user: ${UID:-0}:${GID:-0}
api: image: geotrekce/admin:${GEOTREK_VERSION:-latest} env_file: - .env ports: - "${API_PORT:-8002}:8000" volumes: - ./var:/opt/geotrek-admin/var depends_on: - memcached - redis - postgres user: ${UID:-0}:${GID:-0}
volumes: postgres: redis:
Bonjour, en mode "prod" django ne sert pas les fichiers statiques (css / images / js etc). Le docker compose fourni ne s'occupe pas de la partie serveur web / proxy. il faut l'utiliser derriere un serveur qui fait proxy et qui sert ces fichiers, par exemple en installant nginx et adaptant le fichier de configuration utilisé pour l'installation de base ubuntu (ou en ajoutant un container nginx à la stack docker-compose).
Il faut adapter ce fichier, pour lui indiquer dans la section upstream l'ip et le port des container web et api, et le chemin vers les dossiers var/static et var/media
Il faut ensuite s'assurer que l'utilisateur nginx a les droits de lecture sur ces dossiers, et executer update.sh, django va "collecter" ces fichiers dans le dossier var/static, et nginx les servira, tout en transmettant le reste des requetes à l'application
Merci c'est sympa, Cela explique bien pourquoi mon reverse proxy me sert correctement les fichiers statiques du site en environnement dev et pas en prod. Bonne soirée.
De : Jean-Etienne Castagnede @.> Envoyé : lundi 23 mai 2022 16:31 À : GeotrekCE/Geotrek-admin @.> Cc : Francois Bouchet @.>; Author @.> Objet : Re: [GeotrekCE/Geotrek-admin] dans le fichier .env En changeant uniquement ENV=dev par ENV=prod le style disparait (Issue #3111)
Bonjour, en mode "prod" django ne sert pas les fichiers statiques (css / images / js etc). Le docker compose fourni est surtout utilisé pour le développement, bien qu'il puisse être adapté pour la prod. il faut l'utiliser derriere un serveur qui fait proxy et qui sert ces fichiers, par exemple en installant nginx et adaptant le fichier de configuration utilisé pour l'installation de base ubuntuhttps://github.com/GeotrekCE/Geotrek-admin/blob/master/conf/nginx.conf.in (ou en ajoutant un container nginx à la stack docker-compose).
Il faut adapter ce fichier, pour lui indiquer dans la section upstream l'ip et le port des container webhttps://github.com/GeotrekCE/Geotrek-admin/blob/master/conf/nginx.conf.in#L2 et apihttps://github.com/GeotrekCE/Geotrek-admin/blob/master/conf/nginx.conf.in#L6, et le chemin vers les dossiers var/static et var/media
Il faut ensuite s'assurer que l'utilisateur nginx a les droits de lecture sur ces dossiers, et executer update.sh, django va "collecter" ces fichiers dans le dossier var/static, et nginx les servira, tout en transmettant le reste des requetes à l'application
— Reply to this email directly, view it on GitHubhttps://github.com/GeotrekCE/Geotrek-admin/issues/3111#issuecomment-1134753938, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AMNBJM6GPCRSAMYVNHBSFZTVLOJDPANCNFSM5WV4RSAA. You are receiving this because you authored the thread.Message ID: @.***>