Dernière fois a décrit jusqu'à nginx.conf
. Cette fois, je voudrais écrire principalement sur docker-compose.yml
, y compris les détails.
Il est ouvert au public ci-dessous. Veuillez vous y référer avec l'article. Dockerize Django Environment
docker-compose.yml
version: '2'
services:
web:
restart: always
build: ./web
expose:
- "8000"
links:
- postgres:postgres
command: gunicorn app.wsgi -b 0.0.0.0:8000
volumes:
- ./web:/usr/src/app
- ./web/static/:/usr/src/app/static
nginx:
restart: always
image: nginx
ports:
- "80:80"
volumes:
- "./nginx/:/etc/nginx/"
- /www/static
volumes_from:
- web
links:
- web:web
postgres:
image: postgres
ports:
- "5432:5432"
Django
(nom du service: web)Django
a été changé en web
. Construisez à partir du Dockerfile
qu'il contient.indique à
docker d'exposer un port réseau spécifique (dans ce cas,
8000`) lorsque le conteneur est exécuté.LINKS
pour lier le conteneur à d'autres services. (Cette fois, postgres
)command
remplace la commande exécutée lorsque le conteneur est exécuté. (Cette fois, gunicorn app.wsgi -b 0.0.0.0: 8000
) * gunicorn
sera décrit séparément.volumes
déclare que le répertoire spécifié est un volume. Il est spécifié par rapport à (host: container)
.Django
dans ./web: / usr / src / app
../web/static /: / usr / src / appstatic
.Nginx
(nom du service: nginx)et tirez. Cette fois, tirez l'image
nginx`.PORTS
vous indique de transférer le port 80 sur l'hôte et le port 80 sur le conteneur.VOLUMES
de copier le fichier nginx.conf
sous le répertoire nginx
de l'hôte dans le répertoire / etc / nignx
du conteneur.VOLUMES
déclare que le répertoire / www / static
est explicitement utilisé comme volume. (Répertoire contenant des fichiers statiques)VOLUMES_FROM
vous indique de monter Web
(le répertoire de Django). (Pour importer des fichiers statiques)PostgreSQL
(nom du service: postgres)postgres
.PORTS
vous indique de transférer le port 5432 sur l'hôte et le port 5432 sur le conteneur.La prochaine fois, je décrirai les paramètres initiaux du framework Django
.
Recommended Posts