Créez et déplacez un répertoire pour votre projet. Ici, continuez avec le nom de l'application linebot.
MacBook-Air ~ % mkdir jinolinebot
MacBook-Air ~ % cd jinolinebot
MacBook-Air jinolinebot %
Créez un Dockerfile et ouvrez-le dans un éditeur.
MacBook-Air jinolinebot % touch Dockerfile
Modifiez le Dockerfile et enregistrez-le.
Dockerfile
FROM python:3
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
ADD requirements.txt /code/
RUN pip install -r requirements.txt
ADD . /code/
Créez requirements.txt et modifiez-le comme suit
MacBook-Air jinolinebot % touch requirements.txt
requirements.txt
Django>=1.8,<2.0
psycopg2
Créez docker-compose.yml et modifiez-le comme suit
MacBook-Air jinolinebot % touch docker-compose.yml
docker-compose.yml
version: '3'
services:
db:
image: postgres
environment:
- POSTGRES_DB=postgres
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
web:
build: .
command: python3 manage.py runserver 0.0.0.0:8000
volumes:
- .:/code
ports:
- "8000:8000"
depends_on:
- db
Maintenant que les trois fichiers sont prêts, lancez l'application.
MacBook-Air jinolinebot % docker-compose run web django-nom de l'application admin startproject.
Creating network "jinolinebot_default" with the default driver
Building web
Step 1/7 : FROM python:3
---> 28a4c88cdbbf
~
Creating jinolinebot_db_1 ... done
Creating jinolinebot_web_run ... done
Après le démarrage, l'étape suivante consiste à configurer la connexion à la base de données. Modifiez et enregistrez le fichier de paramètres généré par la commande précédente comme suit.
nom de l'application/settings.py
~
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'postgres',
'USER': 'postgres',
'PASSWORD': 'postgres',
'HOST': 'db',
'PORT': 5432,
}
}
~
Lancez le conteneur et lorsque l'écran suivant s'affiche en premier, accédez à http://0.0.0.0:8000/
MacBook-Air jinolinebot % docker-compose up
~
Starting development server at http://0.0.0.0:8000/
web_1 | Quit the server with CONTROL-C.
It worked! Succès lorsque le message Félicitations pour votre première page alimentée par Django. S'affiche.
https://github.com/yongjugithub/djangodocker
https://docs.docker.jp/compose/django.html#id2
Recommended Posts