[PYTHON] Créez un environnement de développement avec Poetry Django Docker Pycharm

introduction

Cela fait un an que j'ai commencé python, mais je ne suis toujours pas habitué à créer un environnement Python. Les gestionnaires de packages en particulier se sentent comme le plus faible de nombreux langages. Pour une raison quelconque, lorsque j'ai essayé de créer un environnement de développement sur mac, une erreur liée à OpenSSL s'est produite.

Nous avons résumé comment créer un environnement de développement sur docker pour résoudre de tels problèmes.

La source est répertoriée sur Github.

Structure du répertoire

├── pyproject.toml
└── docker
    └── Dockerfile
    └── docker-compose.yml
└── mysite/*

Fichier

Seuls les fichiers principaux sont décrits. Conservez les fichiers créés par Django.

pyproject.toml


[tool.poetry]
name = "python-dev-on-docker"
version = "0.1.0"
description = ""
authors = ["va034600"]

[tool.poetry.dependencies]
python = "^3.6"
django = "^3.1.1"

[tool.poetry.dev-dependencies]

[build-system]
requires = ["poetry>=0.12"]
build-backend = "poetry.masonry.api"

Dockerfile


FROM python:3.6.8
WORKDIR /usr/src/app

ENV POETRY_VERSION=1.0.10 \
    PATH="/root/.poetry/bin:$PATH"
RUN curl -sSL https://raw.githubusercontent.com/sdispater/poetry/${POETRY_VERSION}/get-poetry.py | python && \
    poetry config virtualenvs.create false
COPY ./pyproject.toml /usr/src/app/pyproject.toml
RUN poetry install

CMD tail -f /dev/null

docker-compose.yml


version: '3.5'
services:
  app:
    build:
      context: ../
      dockerfile: ./docker/Dockerfile
    working_dir: /usr/src/app/mysite
    command: python manage.py runserver 0.0.0.0:8000
    volumes:
      - ../mysite:/usr/src/app/mysite
    ports:
      - "8000:8000"

Exécutez docker-compose à partir de la console

Pour le moment, vérifiez le fonctionnement avec docker-compose up sans Pycharm.

$ cd docker
$ docker-compose up -d
$ curl http://127.0.0.1:8000/
$ docker-compose down
hello1

Déboguer avec Pycharm

Paramètres Pycharm

Ajouter un interpréteur Python avec docker-compose

スクリーンショット 2020-09-13 9.41.41.png

Rendre le projet Interpreter docker-compose

Preferences.png

Créer un serveur d'exécution dans la configuration

Le but est de définir le paramètre sur runserver 0.0.0.0: 8000 Run_Debug_Configurations.png

Déboguer avec Pycharm

Cela arrêtera également le point d'arrêt. Il sera également reflété sans redémarrer docker-compose en modifiant le fichier.

À la fin

Cela rend le côté hôte propre. Vous pouvez facilement créer un environnement de développement.

Recommended Posts

Créez un environnement de développement avec Poetry Django Docker Pycharm
[Django] Créez rapidement un environnement de développement de conteneur Django (Docker) avec PyCharm
[Python] Créer un environnement de développement Django avec Docker
Créez un environnement de développement Django avec Docker! (Docker-compose / Django / postgreSQL / nginx)
[Memo] Construire un environnement de développement pour Django + Nuxt.js avec Docker
Créer un environnement de développement Django à l'aide de Doker Toolbox
J'ai créé un environnement de développement pour Django 3.0 avec Docker, Docker-compose, Poetry
[DynamoDB] [Docker] Créer un environnement de développement pour DynamoDB et Django avec docker-compose
Créer une application Todo avec Django ① Créer un environnement avec Docker
Créez facilement un environnement de développement avec Laragon
[Linux] Créer un environnement Jenkins avec Docker
[Linux] Construction de l'environnement Docker avec Amazon Linux 2
Créer un environnement de développement de langage C avec un conteneur
Créez un environnement Django avec Vagrant en 5 minutes
Créez rapidement un environnement Python Django avec IntelliJ
Obtenez un environnement de développement Python rapide avec Poetry
Créer un environnement de développement Django à l'aide de pyenv-virtualenv sur Mac
Comment créer un environnement Django (python) sur Docker
Créer un environnement de développement d'applications d'apprentissage automatique avec Python
Construire un environnement Django pour Win10 (avec espace virtuel)
Créer un environnement de développement d'API rapide léger à l'aide de Docker
Créez un environnement de développement local avec WSL + Docker Desktop pour Windows + docker-lambda + Python
Créer un environnement go à l'aide de Docker
Construire un environnement Mysql + Python avec docker
Déployer l'application Django avec Docker
Créer une application Web avec Django
Reconstruisez l'environnement de développement de Django avec Docker! !! !! !!
Créez un environnement de développement Go avec les conteneurs distants de VS Code
Créez un environnement de développement confortable avec VSCode x Remote Development x Pipenv
Comment créer un environnement de développement de la série Python2.7 avec Vagrant
Créez un environnement de développement Python simple avec VSCode et Docker Desktop
Créez un environnement de développement Flask à faible coût avec Docker
[Django] Créez rapidement un environnement de développement de conteneur Django (Docker) à l'aide de VS Code + Remote Containers
Créer un environnement Jupyter Lab (Python) avec Docker
Créer un environnement Tensorflow avec Raspberry Pi [2020]
Créez un environnement Python sur votre Mac avec Anaconda et PyCharm
Créez un environnement d'API rapide avec docker-compose
Créez un environnement virtuel pour python avec pyenv
Créez un environnement Python moderne avec Neovim
Construire un environnement de NGINX + NGINX Unit + MySQL avec Docker
Apprentissage de l'historique pour participer au développement d'applications d'équipe avec Python ~ Créer un environnement Docker / Django / Nginx / MariaDB ~
Construisez un environnement Python + bouteille + MySQL avec Docker sur RaspberryPi3! [Construction facile]
Créez un environnement CentOS Linux 8 avec Docker et démarrez Apache HTTP Server
J'ai essayé de créer un environnement de développement Mac Python avec pythonz + direnv
Procédure de création d'un environnement Django avec Win10 WSL Ubuntu18.04 + Anaconda + Apache2
Créez un environnement LAMP sur votre Docker local
Créez un environnement WardPress sur AWS avec Pulumi
Créer un environnement de développement Python avec Visual Studio Code
Construire un environnement Django sur Raspai (MySQL)
Créez un environnement python avec ansible sur centos6
Démarrez Django dans un environnement virtuel à l'aide de Pipenv
Créer un environnement de construction python3 avec Sublime Text3
Créer un environnement de Nginx + uWSGI + Python (Django) avec docker
Créez un environnement de développement Python sur votre Mac
[Memo] Créez un environnement virtuel avec Pyenv + anaconda