[PYTHON] Erstellen Sie mit Docker kostengünstig eine Flask-Entwicklungsumgebung

Einführung

Ich wollte schnell eine Umgebung schaffen und sie für praktische oder inspirierende Zwecke entsorgen. Ich habe es so gemacht, dass es in ein paar Dateien und ein paar Sekunden erstellt werden kann.

Vorbereitung

Ich mache nur die Grundlagen. Wenn also nur Docker funktioniert, sollte es handhabbar sein. Meine Ausführungsumgebung ist Public Beta von Docker für Mac.

Ausführung


$ docker --version
Docker version 1.12.0, build 8eab29e, experimental

Quelle

Lokale Verzeichnisstruktur


flask/
    ├ Dockerfile
    ├ requirements.txt
    └ hello.py

Dockerfile

#Angeben des Basisbildes
FROM python:3.5.2-alpine
                    
#Speichern Sie das Verzeichnis, in dem sich die Quelle befindet, als Variable
ARG project_dir=/web/hello/
                                
#Kopieren Sie die erforderlichen Dateien von lokal in den Container
ADD requirements.txt $project_dir
ADD hello.py $project_dir
         
# requirements.Installieren Sie das in txt aufgeführte Paket
WORKDIR $project_dir
RUN pip install -r requirements.txt

#Installieren Sie die erforderlichen Pakete (wenn Sie in einem Container arbeiten)
RUN apk update                  
RUN apk add zsh vim tmux git tig

requirements.txt

$Nach dem Ausführen des Rohrs den Kolben einbauen$ pip freeze > requirements.TXT




#### **`requirements.txt`**
```txt

click==6.6
Flask==0.11.1
itsdangerous==0.24
Jinja2==2.8
MarkupSafe==0.23
Werkzeug==0.11.10

Wenn es Ihnen nichts ausmacht, die Paketversion zu ändern Einfach `` `$ pip install flask``` im Behälter ist vollkommen in Ordnung.

hello.py Ausgeliehen von Offizielle Seite.

app.Das Argument run wurde zu Entwicklungszwecken geändert.




#### **`hello.py`**
```py

from flask import Flask                           
app = Flask(__name__)                             
                                                  
@app.route('/')                                   
def hello_world():                                
    return "Hello World!"                         
                                                  
if __name__ == '__main__':                        
    app.run(host="0.0.0.0", port=5000, debug=True)

Verfahren

Bilderzeugung

Bilderzeugung


$ cd /path/to/flask/
$ docker build -t flask . 

Container-Start

Container-Start


$ docker run -p 5000:5000 -it flask /bin/sh

Flaschenausführung

Da Host und Port bereits in `` `hello.py``` angegeben sind, nur ausführen.

Flaschenausführung


$ cd /path/to/hello/
$ python hello.py

Wenn Sie über Ihren Browser auf `localhost: 5000``` zugreifen, wird` Hello World! `` `Angezeigt.

Fazit

Bisher habe ich Ansible verwendet, um pyenv und virtualenv voll auszunutzen. Ich werde es trotzdem wegwerfen und ich denke, es ist in Ordnung, die Version grob zu verwalten.

Die Python-Installation bleibt dem Basis-Image überlassen Wenn Sie sich richtig entwickeln möchten, können Sie die Docker-Datei lesen oder selbst erstellen.

Recommended Posts

Erstellen Sie mit Docker kostengünstig eine Flask-Entwicklungsumgebung
Erstellen Sie mit Docker eine einfache Fast API-Entwicklungsumgebung
Erstellen Sie mit Docker eine Go-Umgebung
[Python] Erstellen Sie mit Docker eine Django-Entwicklungsumgebung
[Mac] Erstellen Sie mit Docker eine Python 3.x-Umgebung mit der schnellsten Geschwindigkeit
Erstellen einer Django-Entwicklungsumgebung mit pyenv-virtualenv auf einem Mac
Erstellen Sie eine Python-Entwicklungsumgebung mit pyenv unter MacOS
Erstellen Sie eine Entwicklungsumgebung mit Poetry Django Docker Pycharm
Erstellen Sie eine Entwicklungsumgebung mit Jupyter und Flask mit Python in Docker (unterstützt sowohl VS Code als auch Code-Server).
[Memo] Erstellen Sie mit Docker eine Entwicklungsumgebung für Django + Nuxt.js
[Django] Erstellen Sie mit PyCharm schnell eine Entwicklungsumgebung für Django-Container (Docker)
[DynamoDB] [Docker] Erstellen Sie mit Docker-Compose eine Entwicklungsumgebung für DynamoDB und Django
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 LAMP-Umgebung auf Ihrem lokalen Docker
Erstellen Sie eine Entwicklungsumgebung für die C-Sprache mit einem Container
Erstellen Sie mit der Doker Toolbox eine Django-Entwicklungsumgebung
Erstellen Sie eine Kubernetes-Umgebung für die Entwicklung unter Ubuntu
Erstellen Sie eine mruby-Entwicklungsumgebung für ESP32 (Linux Edition)
Erstellen Sie eine Python-Entwicklungsumgebung auf Raspberry Pi
Flutter in Docker - Erstellen und Verwenden einer Flutter-Entwicklungsumgebung in einem Docker-Container
Erstellen Sie eine lokale Entwicklungsumgebung mit WSL + Docker Desktop für Windows + Docker-Lambda + Python
Erstellen Sie eine GVim-basierte Python-Entwicklungsumgebung unter Windows 10 (3) GVim8.0 und Python3.6
Erstellen Sie eine lokale Entwicklungsumgebung für Laravel6.X auf Ihrem Mac
Erstellen Sie eine GVim-basierte Python-Entwicklungsumgebung unter Windows 10 (1)
So erstellen Sie eine Django (Python) -Umgebung auf Docker
Ich möchte einfach eine modellbasierte Entwicklungsumgebung erstellen
Erstellen Sie eine Python-Entwicklungsumgebung unter Mac OS X.
Erstellen Sie eine virtuelle Python-Umgebung mit venv (Django + MySQL ①)
[Go + Gin] Ich habe versucht, eine Docker-Umgebung zu erstellen
Erstellen Sie mit pyenv eine Python-Umgebung auf Ihrem Mac
Erstellen Sie mit Python eine Entwicklungsumgebung für maschinelles Lernen
So erstellen Sie eine Entwicklungsumgebung für TensorFlow (1.0.0) (Mac)
[Django] Verwenden Sie VS Code + Remote-Container, um schnell eine Entwicklungsumgebung für Django-Container (Docker) zu erstellen.
Erstellen einer Jupyter Lab-Entwicklungsumgebung auf WSL2 mit Anaconda3
Erstellen Sie eine Go-Entwicklungsumgebung mit den Remote-Containern von VS Code
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 VS Code + Docker-Entwicklungsumgebung mit Linux VM
Erstellen Sie eine Python-Entwicklungsumgebung mit Eclipse (fügen Sie einen HTML-Editor hinzu).
Erstellen Sie eine LAMP-Umgebung [CentOS 7]
Erstellen Sie eine GVim-basierte Python-Entwicklungsumgebung unter Windows 10 (2) Grundeinstellungen
Erstellen Sie mit VSCode x Remote Development x Pipenv eine komfortable Entwicklungsumgebung
[ev3dev × Python] Aufbau einer ev3dev-Entwicklungsumgebung
Erstellen Sie eine maschinelle Lernumgebung
Erstellen einer Entwicklungsumgebung für die Python2.7-Serie mit Vagrant
Erstellen Sie mit VSCode & Docker Desktop eine einfache Python-Entwicklungsumgebung
Erstellen einer Todo-App mit Django ① Erstellen Sie eine Umgebung mit Docker
Erstellen Sie die Python-Umgebung offline
Hinweise zum Erstellen einer LAMP-Umgebung mit Vagrant und VirtulBox
[Docker] Erstellen Sie eine Umgebung für Python (Flask) + GraphQL (Graphen) + MySQL (SQLalchemy)
Erstellen Sie eine Chainer-Umgebung mit CUDA und cuDNN auf einer p2-Instanz
Versuchen Sie es mit virtualenv, mit dem eine virtuelle Umgebung von Python erstellt werden kann
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
Ich habe eine Entwicklungsumgebung für Django 3.0 mit Docker, Docker-Compose und Poetry erstellt