Un mémo sur la création d'une application Django (Python) avec Docker

introduction

environnement

Postscript

Procédure (préparation et mise en service)

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.

Fichier docker créé

https://github.com/yongjugithub/djangodocker

Les références

https://docs.docker.jp/compose/django.html#id2

Recommended Posts

Un mémo sur la création d'une application Django (Python) avec Docker
Déployer l'application Django avec Docker
Exécutez une application Web Python avec Docker
[Python] Créer un environnement de développement Django avec Docker
Créer une application Rails avec Docker
Créer un environnement virtuel avec Python 3
Créer une application Web avec Django
Développement d'applications avec Docker + Python + Flask
[Memo] Construire un environnement de développement pour Django + Nuxt.js avec Docker
[Pyenv] Construire un environnement python avec ubuntu 16.04
Un mémo contenant Python2.7 et Python3 dans CentOS
Création d'un environnement Python 3.6 avec Windows + PowerShell
[Python] Une application web rapide avec Bottle!
J'ai fait une application WEB avec Django
Construire un environnement python avec virtualenv et direnv
Démarrez un serveur Web Python simple avec Docker
Un mémo que j'ai écrit un tri de fusion en Python
Créer un environnement de Nginx + uWSGI + Python (Django) avec docker
Une histoire sur l'implémentation d'un écran de connexion avec django
Un mémo lors de la création d'un environnement python avec miniconda
Pensez à créer un environnement Python 3 dans un environnement Mac
Créez une application Hello World avec un seul fichier avec django
Liste de tâches simple créée avec Python + Django
Créez rapidement un environnement Python Django avec IntelliJ
Facile à créer une application console Python avec Click
Django 1.11 a démarré avec Python3.6
[Python] Mémo sur les fonctions
[Python] Mémo sur les erreurs
Utiliser python avec docker
Recommandation de construction d'un environnement Python portable avec conda
Création d'un environnement de travail Docker R et Python
(Python) Essayez de développer une application Web en utilisant Django
Déployer l'application Django sur Google App Engine (Python3)
L'histoire de la création d'une partition de type Hanon avec Python
Comment créer un environnement Django (python) sur Docker
Application Web réalisée avec Python3.4 + Django (Construction de l'environnement Part.1)
Créer un environnement de développement d'applications d'apprentissage automatique avec Python
[Python] Un mémo pour écrire du CSV verticalement avec Pandas
Créer une couche pour AWS Lambda Python dans Docker
Un mémo que j'ai touché au magasin de données avec python
Lancer Django sur un conteneur Docker à l'aide de docker-compose up
Remarque conda: Création d'un environnement Python avec Spacon ITO
Vivez une vie de Haml avec Django1.8 + Jinja2 + hamlish-jinja (Python3)
Créez un environnement de développement avec Poetry Django Docker Pycharm
Mémo de construction d'environnement d'apprentissage automatique par Python
Faites Django avec CodeStar (Python3.6.8, Django2.2.9)
Mémo graphique Twitter avec Python
Faites Django avec CodeStar (Python3.8, Django2.1.15)
Python3 + Django ~ Mac ~ avec Apache
Premiers pas avec Python Django (1)
Créer une page d'accueil avec django
Créer une application Web avec Django
Premiers pas avec Python Django (3)
Préparer l'environnement python3 avec Docker
Mémorandum sur la corrélation [Python]
Faites une loterie avec Python
Un mémorandum sur le simulacre de Python