[PYTHON] Erstellen Sie eine Entwicklungsumgebung mit Poetry Django Docker Pycharm

Einführung

Es ist ein Jahr her, seit ich Python gestartet habe, aber ich bin es immer noch nicht gewohnt, eine Python-Umgebung zu erstellen. Insbesondere Paketmanager fühlen sich als die schwächste von vielen Sprachen. Aus irgendeinem Grund ist beim Versuch, eine Entwicklungsumgebung auf einem Mac zu erstellen, ein Fehler im Zusammenhang mit OpenSSL aufgetreten.

Wir haben zusammengefasst, wie eine Entwicklungsumgebung auf Docker erstellt wird, um solche Probleme zu lösen.

Die Quelle ist auf Github aufgeführt.

Verzeichnisaufbau

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

Datei

Es werden nur die Hauptdateien beschrieben. Behalten Sie die von Django erstellten Dateien bei.

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"

Führen Sie Docker-Compose von der Konsole aus

Überprüfen Sie vorerst den Vorgang mit "Docker-Compose Up" ohne Pycharm.

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

Debuggen mit Pycharm

Pycharm-Einstellungen

Fügen Sie Python Interpreter mit Docker-Compose hinzu

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

Machen Sie das Projekt Interpreter Docker-Compose

Preferences.png

Erstellen Sie einen Runserver in der Konfiguration

Der Punkt ist, den Parameter auf "runserver 0.0.0.0: 8000" zu setzen Run_Debug_Configurations.png

Debuggen mit Pycharm

Dadurch wird auch der Haltepunkt gestoppt. Es wird auch ohne Neustart von Docker-Compose durch Ändern der Datei wiedergegeben.

Am Ende

Dies macht die Host-Seite sauber. Sie können problemlos eine Entwicklungsumgebung erstellen.

Recommended Posts

Erstellen Sie eine Entwicklungsumgebung mit Poetry Django Docker Pycharm
[Django] Erstellen Sie mit PyCharm schnell eine Entwicklungsumgebung für Django-Container (Docker)
[Python] Erstellen Sie mit Docker eine Django-Entwicklungsumgebung
Erstellen Sie mit Docker eine Django-Entwicklungsumgebung! (Docker-compose / Django / postgreSQL / nginx)
[Memo] Erstellen Sie mit Docker eine Entwicklungsumgebung für Django + Nuxt.js
Erstellen Sie mit der Doker Toolbox eine Django-Entwicklungsumgebung
Ich habe eine Entwicklungsumgebung für Django 3.0 mit Docker, Docker-Compose und Poetry erstellt
[DynamoDB] [Docker] Erstellen Sie mit Docker-Compose eine Entwicklungsumgebung für DynamoDB und Django
Erstellen einer Todo-App mit Django ① Erstellen Sie eine Umgebung mit Docker
Erstellen Sie mit Laragon ganz einfach eine Entwicklungsumgebung
[Linux] Erstellen einer Jenkins-Umgebung mit Docker
[Linux] Aufbau einer Docker-Umgebung mit Amazon Linux 2
Erstellen Sie eine Entwicklungsumgebung für die C-Sprache mit einem Container
Erstellen Sie mit Vagrant in 5 Minuten eine Django-Umgebung
Erstellen Sie mit IntelliJ schnell eine Python Django-Umgebung
Holen Sie sich mit Poetry eine schnelle Python-Entwicklungsumgebung
Erstellen einer Django-Entwicklungsumgebung mit pyenv-virtualenv auf einem Mac
So erstellen Sie eine Django (Python) -Umgebung auf Docker
Erstellen Sie mit Python eine Entwicklungsumgebung für maschinelles Lernen
Erstellen einer Django-Umgebung für Win10 (mit virtuellem Speicherplatz)
Erstellen Sie mit Docker eine einfache Fast API-Entwicklungsumgebung
Erstellen Sie eine lokale Entwicklungsumgebung mit WSL + Docker Desktop für Windows + Docker-Lambda + Python
Erstellen Sie mit Docker eine Go-Umgebung
Erstellen Sie eine MySQL + Python-Umgebung mit Docker
Stellen Sie die Django-Anwendung mit Docker bereit
Erstellen Sie eine Webanwendung mit Django
Erstellen Sie die Entwicklungsumgebung von Django mit Docker neu! !! !! !!
Erstellen Sie eine Go-Entwicklungsumgebung mit den Remote-Containern von VS Code
Erstellen Sie mit VSCode x Remote Development x Pipenv eine komfortable Entwicklungsumgebung
Erstellen einer Entwicklungsumgebung für die Python2.7-Serie mit Vagrant
Erstellen Sie mit VSCode & Docker Desktop eine einfache Python-Entwicklungsumgebung
Erstellen Sie mit Docker kostengünstig eine Flask-Entwicklungsumgebung
[Django] Verwenden Sie VS Code + Remote-Container, um schnell eine Entwicklungsumgebung für Django-Container (Docker) zu erstellen.
Erstellen Sie mit Docker eine Jupyter Lab (Python) -Umgebung
Erstellen Sie eine Tensorflow-Umgebung mit Raspberry Pi [2020]
Erstellen Sie mit Anaconda und PyCharm eine Python-Umgebung auf Ihrem Mac
Erstellen Sie mit Docker-Compose eine schnelle API-Umgebung
Erstellen Sie mit pyenv eine virtuelle Umgebung für Python
Erstellen Sie mit Neovim eine moderne Python-Umgebung
Erstellen Sie mit Docker eine Umgebung aus NGINX + NGINX Unit + MySQL
Lernverlauf zur Teilnahme an der Entwicklung von Teamanwendungen mit Python ~ Build Docker / Django / Nginx / MariaDB-Umgebung ~
Erstellen Sie mit Docker auf RaspberryPi3 eine Python + Flasche + MySQL-Umgebung! [Einfache Konstruktion]
Erstellen Sie mit Docker eine CentOS Linux 8-Umgebung und starten Sie Apache HTTP Server
Ich habe versucht, eine Mac Python-Entwicklungsumgebung mit pythonz + direnv zu erstellen
Vorgehensweise zum Erstellen einer Django-Umgebung mit Win10 WSL Ubuntu18.04 + Anaconda + Apache2
Erstellen Sie eine LAMP-Umgebung auf Ihrem lokalen Docker
Erstellen Sie mit pulumi eine WardPress-Umgebung auf AWS
Erstellen Sie eine Python-Entwicklungsumgebung mit Visual Studio Code
Erstellen Sie eine Django-Umgebung auf Raspai (MySQL)
Erstellen Sie eine Python-Umgebung mit ansible auf centos6
Starten Sie Django in einer virtuellen Umgebung mit Pipenv
Erstellen Sie mit Sublime Text3 eine Python3-Build-Umgebung
Erstellen Sie mit Docker eine Umgebung aus Nginx + uWSGI + Python (Django)
Erstellen Sie eine Python-Entwicklungsumgebung auf Ihrem Mac
[Memo] Erstellen Sie eine virtuelle Umgebung mit Pyenv + anaconda