[Mac] Erstellen Sie mit Docker eine Python 3.x-Umgebung mit der schnellsten Geschwindigkeit

Python 2.7 ist standardmäßig auf einem Mac installiert. Wenn Sie also eine Python 3.x-Umgebung benötigen, können Sie Pipenv oder Ich denke, dass Sie häufig eine Umgebung mit pyenv erstellen.

Die Installation schlug jedoch häufig fehl oder die Einrichtung nahm viel Zeit in Anspruch. Daher finden Sie hier eine Zusammenfassung zum Erstellen einer Python 3.x-Umgebung mit Docker.

Betriebsumgebung

Erstellen Sie mit Docker eine Python 3.x-Umgebung

Laden Sie "Docker Desktop für Mac" von der folgenden URL herunter und installieren Sie es. https://hub.docker.com/editions/community/docker-ce-desktop-mac

Führen Sie nach Abschluss der Docker-Installation den Befehl "Docker-Version" aus, um festzustellen, ob die Installation korrekt ist.

$ docker version
Client: Docker Engine - Community
 Version:           19.03.5
 API version:       1.40
 Go version:        go1.12.12
 Git commit:        633a0ea
 Built:             Wed Nov 13 07:22:34 2019
 OS/Arch:           darwin/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.5
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.12
  Git commit:       633a0ea
  Built:            Wed Nov 13 07:29:19 2019
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          v1.2.10
  GitCommit:        b34a5c8af56e510852c35414db4c1f4fa6172339
 runc:
  Version:          1.0.0-rc8+dev
  GitCommit:        3e425f80a8c931f88e6d94a8c831b9d5aa481657
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

Erstellen Sie einen beliebigen Ordner als Python-Projektordner und legen Sie die Python-Quelldateien in diesem Ordner ab.

$ cd /Users/username/work/python/helloworld
$ echo 'print("Hello World!")' > helloworld.py

Führen Sie den Befehl "docker run" aus, um den Container zu starten, der die Ausführungsumgebung für Python sein wird.

Geben Sie die folgenden Optionen an.

--- i (--interactive): An die Standardeingabe des Containers anhängen. --- t (--tty): Weist ein Pseudo-Terminal (Pseudo-TTY) zu. ---- rm: Löscht den Container automatisch, wenn der Container geschlossen wird. --- v (--volume): Hängen Sie den lokalen Ordner in den Container ein. (: )

Verwenden Sie für das Docker-Image "python: 3.7-alpine", das auf Docker Hub veröffentlicht wurde. Benutzen.

"/ Bin / sh" am Ende des Befehls ist der Befehl, der ausgeführt wird, wenn der Container gestartet wird.

$ docker run -it --rm -v /Users/username/work/python/helloworld:/helloworld python:3.7-alpine /bin/sh

Führen Sie nach dem Start des Containers den folgenden Befehl aus, um zu überprüfen, ob er ordnungsgemäß funktioniert.

/ # ls
bin         etc         home        media       opt         root        sbin        sys         usr
dev         helloworld  lib         mnt         proc        run         srv         tmp         var
/ # python --version
Python 3.7.5

Gehen Sie zu Ihrem Projektordner und führen Sie die Python-Datei aus.

/ # cd helloworld/
/helloworld # python helloworld.py 
Hello World!

Durch Ausführen des Befehls "exit" wird der Container beendet.

/helloworld # exit

Installieren Sie das Paket, wenn der Container gestartet wird

Da der Container beim Start initialisiert wird, müssen Sie bei jedem Start die erforderlichen Pakete installieren.

Das ist mühsam. Erstellen Sie daher ein neues Docker-Image, damit die erforderlichen Pakete beim Start des Containers installiert werden.

Erstellen Sie eine Docker-Datei in Ihrem Projektordner.

Dockerfile


#Geben Sie das Basis-Docker-Image an
FROM python:3.7.5-alpine

#Geben Sie den Projektordner an
ARG project_dir=/helloworld/

# requirements.Kopieren Sie txt in den Container
ADD requirements.txt $project_dir

# requirements.Installieren Sie das in txt geschriebene Paket
WORKDIR $project_dir
RUN pip install -r requirements.txt

Führen Sie den Befehl "Docker Build" aus, um ein neues Docker-Image "helloworld" zu erstellen.

$ docker build -t helloworld .

Wenn Sie den Befehl "docker run" mit dem neu erstellten Docker-Image "helloworld" ausführen, wird das in der Datei "resources.txt" beschriebene Paket beim Start des Containers installiert.

$ docker run -it --rm -v /Users/username/work/python/helloworld:/helloworld helloworld /bin/sh

Recommended Posts

[Mac] Erstellen Sie mit Docker eine Python 3.x-Umgebung mit der schnellsten Geschwindigkeit
Erstellen Sie eine Python-Entwicklungsumgebung unter Mac OS X.
Erstellen Sie mit pyenv eine Python-Umgebung auf Ihrem Mac
Erstellen Sie mit Docker eine Go-Umgebung
Erstellen Sie mit Docker kostengünstig eine Flask-Entwicklungsumgebung
Ich habe versucht, PyCaret mit der schnellsten Geschwindigkeit zu verwenden
[Python] Erstellen Sie mit Docker eine Django-Entwicklungsumgebung
Erstellen Sie eine Python-Entwicklungsumgebung auf Ihrem Mac
Erstellen einer Django-Entwicklungsumgebung mit pyenv-virtualenv auf einem Mac
Erstellen Sie eine Python-Umgebung für maschinelles Lernen unter Mac OS
So erstellen Sie eine Django (Python) -Umgebung auf Docker
Erstellen Sie eine Python-Entwicklungsumgebung mit pyenv unter MacOS
Erstellen Sie mit Docker eine einfache Fast API-Entwicklungsumgebung
Erstellen Sie die Python-Umgebung offline
Erstellen Sie mit hug einen Web-API-Server mit explosiver Geschwindigkeit
Erstellen Sie einfach eine GCP-Umgebung für Kaggle mit hoher Geschwindigkeit
Erstellen Sie eine Python-Datenanalyseumgebung auf einem Mac (El Capitan).
Erstellen Sie eine Python-Umgebung und übertragen Sie Daten auf den Server
Erstellen Sie eine Python-Umgebung mit pyenv (OS X El Capitan 10.11.3).
Erstellen Sie eine Python-Umgebung auf dem Mac (2017/4)
Erstellen Sie eine MySQL + Python-Umgebung mit Docker
Erstellen Sie eine Python3-Umgebung unter CentOS7
Erstellen Sie mit dem Serverless Framework eine lokale Entwicklungsumgebung für Lambda + Python
Versuchen Sie es mit virtualenv, mit dem eine virtuelle Umgebung von Python erstellt werden kann
Fortsetzung ・ Hinweise zur Vorbereitung der Python-Entwicklungsumgebung unter Mac OS X.
Der einfachste Weg, um eine Spleeter-Nutzungsumgebung unter Windows zu erstellen
So erstellen Sie eine Python-Umgebung mit Virtualenv unter Ubuntu 18.04 LTS
Erstellen und testen Sie mit Docker in wenigen Minuten eine OpenCV- und Python-Umgebung
Erstellen Sie eine Python-Ausführungsumgebung mithilfe der GPU mit der GCP Compute Engine
[Mac] Erstellen Sie eine Python 3-Ausführungsumgebung aus dem vollständig initialisierten Status
Verwenden von venv in der Windows + Docker-Umgebung [Python]
Hinter dem Flyer: Docker mit Python verwenden
Erstellen Sie eine Python-Umgebung auf Ihrem Mac
[Python] Erstellen Sie eine Stapelumgebung mit AWS-CDK
Ich möchte eine Python-Umgebung erstellen
[Mac] Erstellen einer virtuellen Umgebung für Python
Erstellen Sie eine Python-Umgebung mit Anaconda auf einem Mac
[Linux] Erstellen einer Jenkins-Umgebung mit Docker
Erstellen Sie mit pyenv eine virtuelle Umgebung für Python
Erstellen Sie eine Python + OpenCV-Umgebung in Cloud9
Erstellen Sie mit Neovim eine moderne Python-Umgebung
[Linux] Aufbau einer Docker-Umgebung mit Amazon Linux 2
Verwenden Sie nach dem Kauf eines neuen Mac Pyenv + Poetry, um eine Python-Umgebung zu erstellen.
Erstellen Sie mit Docker auf RaspberryPi3 eine Python + Flasche + MySQL-Umgebung! [Einfache Konstruktion]
Ich habe versucht, eine Mac Python-Entwicklungsumgebung mit pythonz + direnv zu erstellen
Erstellen Sie eine Entwicklungsumgebung mit Jupyter und Flask mit Python in Docker (unterstützt sowohl VS Code als auch Code-Server).
Erstellen Sie in 10 Minuten eine Python-Entwicklungsumgebung (Mac OS X + Visual Studio-Code).
Erstellen Sie eine LAMP-Umgebung auf Ihrem lokalen Docker
Bereiten Sie die Ausführungsumgebung von Python3 mit Docker vor
Erstellen Sie die Python3.5 + matplotlib-Umgebung unter Ubuntu 12 mit Anaconda
[Circuit x Python] So ermitteln Sie die Übertragungsfunktion eines Schaltkreises mit Lcapy
Erstellen Sie einfach eine Python 3-Ausführungsumgebung unter Windows
Erstellen Sie eine Python-Umgebung mit ansible auf centos6
So erstellen Sie eine Umgebung für die Verwendung mehrerer Python-Versionen auf einem Mac
ffmpeg-Erstellen Sie eine Python-Umgebung und teilen Sie das Video
Erstellen Sie mit Docker auf RaspberryPi3 eine Python + Flasche + MySQL-Umgebung! [Versuch und Irrtum]