Dieses Tutorial zeigt das Erstellen und Bereitstellen einer einfachen Flask-Anwendung mit Docker. Wir behandeln das Erstellen einer Docker-Datei, das Erstellen des Images, das Ausführen eines Containers und sogar das Übertragen des Images an Docker Hub. Für diejenigen, die mit den Docker-Grundlagen nicht vertraut sind, schauen Sie sich diesen vorherigen Beitrag an:
Beginnen wir mit einem praktischen Beispiel:
Projekt-Setup:
index.py
mit dieser einfachen Flask-Anwendung:<code class="language-python"># index.py from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "Hello World!" if __name__ == "__main__": app.run(host="0.0.0.0", port=int("5000"), debug=True)</code>
Dockerfile
(keine Erweiterung) mit folgendem Inhalt:<code class="language-dockerfile">FROM python:3.13.1-alpine3.21 WORKDIR /app COPY . /app RUN pip install -r requirements.txt EXPOSE 5000 CMD ["python", "index.py"]</code>
requirements.txt
im Verzeichnis „flask-app“:<code>Flask==2.3.2</code>
Ihre Verzeichnisstruktur sollte nun wie folgt aussehen:
<code>flask-app/ ├── Dockerfile ├── index.py └── requirements.txt</code>
Erstellen und Ausführen des Docker-Images:
<code class="language-bash">docker build -t flask-app .</code>
<code class="language-bash">docker images</code>
<code class="language-bash">docker run --name my-flask-app -d -p 5000:5000 flask-app</code>
<code class="language-bash">docker ps -a</code>
http://127.0.0.1:5000
zugreifen oder curl
:<code class="language-bash">curl http://127.0.0.1:5000</code>
<code class="language-bash">docker container rm -f my-flask-app</code>
<code class="language-bash">docker image rm -f flask-app</code>
Pushing zum Docker Hub:
Bevor Sie zum Docker Hub pushen, erstellen Sie ein Konto, falls Sie noch keines haben. Dann:
omerbsezer
durch Ihren Docker Hub-Benutzernamen):<code class="language-bash">docker tag flask-app omerbsezer/dev-to-flask-app:latest</code>
<code class="language-bash">docker push omerbsezer/dev-to-flask-app:latest</code>
Sie können Ihr Bild dann auf Docker Hub sehen. Ein Screenshot würde hier platziert werden.
Fazit:
Dieses praktische Beispiel zeigt einen vollständigen Workflow zum Containerisieren einer einfachen Python-Anwendung mit Docker. Für weitere Docker-Tutorials, AWS-, Kubernetes-, Linux-, DevOps-, Ansible-, maschinelles Lernen, generative KI und SAAS-Inhalte folgen Sie diesen Links:
Das obige ist der detaillierte Inhalt vonDocker Hands-on: Lernen Sie Dockerfile, Container und Portweiterleitung mit dem Beispiel-Flask-Projekt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!