Bereiten Sie die Ausführungsumgebung von Python3 mit Docker vor

"Erstellen eines Dienstes, der den Nutzungsverlauf von Suica für Mobilgeräte so bearbeitet, dass er problemlos zur Kostenabrechnung verwendet werden kann" Zunächst werden wir in Python entwickeln, also erstellen Sie eine Umgebung, in der Python ausgeführt werden kann

Autorenumgebung

windows PC (Core i7-7600 / 16GB) Bearbeiten mit VS-Code Es ist praktisch, Python- und Docker-Erweiterungen einzuschließen

Politik

Da es auf einem Windows-PC entwickelt wurde, ist es schwierig, es direkt zu tun. Die Python-Ausführungsumgebung richtet einen Container mit Docker ein

Vorbereitung

Installieren Sie ** Docker für Windows ** Es ist erforderlich, Hyper-V zu aktivieren. Installieren Sie auch [** docker-compose **] * [Docker] Installieren Sie Docker und Docker Compose unter Windows 10 Pro 64bit

Erstellen Sie eine Docker-Datei

Ich werde verschiedene Dinge installieren, also baue das Image Speichern Sie die folgende Datei als Docker-Datei in einem geeigneten Verzeichnis

Dockerfile


FROM centos/python-36-centos7:latest
USER root
RUN yum -y install java-1.8.0-openjdk
RUN pip install flask pandas tabula-py uwsgi
WORKDIR /src
ENV PYTHONUNBUFFERED=1

Erstellen Sie docker-compose.yml

Da Sie die Python-Datei unter Windows bearbeiten und unter Docker ausführen, müssen Sie die Python-Datei unter Windows im Container anzeigen können. Dies kann beim Starten des Containers mit "-v" angegeben werden. Da Windows jedoch Probleme bereitet und ich den Befehl nicht jedes Mal eingeben möchte, vereinheitlichen Sie die Befehle mit docker-compose

docker-compose.yml


version: '3.7'
services:

  testenv:
    build:
      context: ./app
      dockerfile: Dockerfile
    container_name: testenv
    tty: true
    command: /bin/sh -c "while :; do sleep 10; done"
    volumes:
      - ./app/src:/src

volumes:
  temp:

Wenn es keinen Befehl gibt: Teil, wird der Container sofort gelöscht Wenn ich google, lösen die meisten Leute es mit tty: true, aber aus irgendeinem Grund ist es in meiner Umgebung nutzlos

Platzieren Sie die Docker-Datei und die Datei docker-compose.yml wie folgt test.py ist eine auszuführende Python-Datei

│  docker-compose.yml
│
└─app
    │  Dockerfile
    │
    └─src
            test.py

Starten Sie den Container

$ docker-compose.exe up --build -d
Creating network "test_default" with the default driver
Building testenv
Step 1/6 : FROM centos/python-36-centos7:latest
 ---> 90c6a4022ee5
Step 2/6 : USER root
 ---> Using cache
 ---> 03e9f59a6dbc
Step 3/6 : RUN yum -y install java-1.8.0-openjdk
 ---> Using cache
 ---> 463337c7b050
Step 4/6 : RUN pip install flask pandas tabula-py PyPDF2 uwsgi crontab
 ---> Using cache
 ---> 26c28d2b838c
Step 5/6 : WORKDIR /src
 ---> Running in f5ab2a9b405e
Removing intermediate container f5ab2a9b405e
 ---> b998a42b8180
Step 6/6 : ENV PYTHONUNBUFFERED=1
 ---> Running in fd8d783f9e2f
Removing intermediate container fd8d783f9e2f
 ---> e1e0833bc33a

Successfully built e1e0833bc33a
Successfully tagged test_testenv:latest

Sehen Sie, ob Sie aufgestanden sind

$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
3b7e97ef1fd5        test_testenv        "container-entrypoin…"   4 seconds ago       Up 2 seconds        8080/tcp            testenv

Versuchen Sie, den Container zu betreten

$ winpty docker exec -it testenv bash
(app-root) bash-4.2# pwd
/src
(app-root) bash-4.2# ls
test.py
(app-root) bash-4.2# cat test.py
print('Hello, World')
(app-root) bash-4.2# python3 test.py
Hello, World

Jetzt können Sie endlich mit dem Schreiben Ihres Codes beginnen.

Recommended Posts

Bereiten Sie die Ausführungsumgebung von Python3 mit Docker vor
Bereiten Sie die Python3-Umgebung mit Docker vor
Hinweis: Bereiten Sie die Umgebung von CmdStanPy mit Docker vor
Vorbereiten der Ausführungsumgebung von PyTorch mit Docker November 2019
Erstellen Sie eine MySQL + Python-Umgebung mit Docker
Richten Sie mit Atom eine Python-Entwicklungsumgebung ein
Bereiten Sie die Entwicklungsumgebung mit anyenv vor
Vereinheitlichen Sie die Umgebung des Python-Entwicklungsteams, beginnend mit Poetry
Erstellen Sie mit Docker eine Jupyter Lab (Python) -Umgebung
Hinter dem Flyer: Docker mit Python verwenden
Überprüfen Sie die Existenz der Datei mit Python
Informationen zur virtuellen Umgebung von Python Version 3.7
Erstellen Sie eine Ausführungsumgebung für Jupyter Lab
Erstellen Sie mit Docker eine Python + uWSGI + Nginx-Umgebung
Starten Sie die Umgebung mit LineBot + Heroku + Docker + Python
Bereiten Sie eine verteilte Lasttestumgebung mit dem Python-Lasttest-Tool Locust vor
Einführung in Python Bereiten wir die Entwicklungsumgebung vor
Vereinheitlichung der Python-Umgebung
2016 Todai Mathematik mit Python gelöst
[Hinweis] Exportieren Sie das HTML der Site mit Python.
Berechnen Sie die Gesamtzahl der Kombinationen mit Python
[Python] Erstellen Sie mit Docker eine Django-Entwicklungsumgebung
der Zen von Python
Verwenden Sie mit pyenv mehrere Versionen der Python-Umgebung
Überprüfen Sie das Datum der Flaggenpflicht mit Python
Ich habe Umgebungsvariablen in Docker festgelegt und in Python angezeigt.
Erstellen Sie mit Docker eine Umgebung aus Nginx + uWSGI + Python (Django)
Bereiten Sie eine Umgebung zum Berühren von Dateien im Grib2-Format mit Python vor (Docker Edition).
Poetry-Virtualenv-Umgebungskonstruktion mit Centos-Sclo-Rh-Python ~ Hinweise
Verwenden Sie Python mit Docker
Python-Umgebung mit Docker-Compose
Bereiten Sie die Umgebung von Chainer auf der EC2-Spot-Instanz mit AWS Lambda vor
Konvertieren Sie den Zeichencode der Datei mit Python3
[Python] Bestimmen Sie den Typ der Iris mit SVM
Virtuelle Umgebung mit Python 3.6
Erstellen Sie eine Python-Ausführungsumgebung mit VS-Code
Ich habe Pygame mit Python 3.5.1 in der Umgebung von pyenv unter OS X installiert
Aufbau einer virtuellen Umgebung mit Docker + Flask (Python) + Jupyter-Notebook
Extrahieren Sie die Tabelle der Bilddateien mit OneDrive & Python
Lerne Nim mit Python (ab Anfang des Jahres).
Um Japanisch mit Python in der Docker-Umgebung verwenden zu können
Empfehlung zum Erstellen einer tragbaren Python-Umgebung mit conda
[Python] OpenCV-Umgebungskonstruktion mit Docker (cv2.imshow () funktioniert auch)
Die Geschichte des Teilens der Pyenv-Umgebung mit mehreren Benutzern
Zerstören Sie den Zwischenausdruck der Sweep-Methode mit Python
Verwenden Sie Python, das von pyenv für die PL / Python-Ausführungsumgebung installiert wurde
Visualisieren Sie den Bereich der internen und externen Einfügungen mit Python
Berechnen Sie den Regressionskoeffizienten der einfachen Regressionsanalyse mit Python
Reproduzieren Sie das Ausführungsbeispiel von Kapitel 4 von Hajipata in Python
Zusammenfassung des grundlegenden Ablaufs des maschinellen Lernens mit Python
Beispiel einer Pytest-Umgebung zum Reparieren der Datenbank mit Docker
Installieren Sie Ubuntu 20.04 mit GUI und bereiten Sie die Entwicklungsumgebung vor
Holen Sie sich mit Python den Betriebsstatus von JR West
Reproduzieren Sie das Ausführungsbeispiel von Kapitel 5 von Hajipata in Python
[Python] Kapitel 01-02 Über Python (Ausführung und Installation der Entwicklungsumgebung)
Auf dem Weg zum Ruhestand von Python2
Installieren Sie die Python-Umgebung mit Anaconda