Ce didacticiel démontre la création et le déploiement d'une application FLASK simple à l'aide de Docker. Nous couvrirons la création d'un dockerfile, la création de l'image, l'exécution d'un conteneur et même la poussée de l'image sur Docker Hub. Pour ceux qui ne connaissent pas les fondamentaux Docker, consultez ce post précédent:
Commençons par un exemple pratique:
Configuration du projet:
index.py
contenant cette application FLASK simple: # 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)
dockerfile
(pas d'extension) avec le contenu suivant: FROM python:3.13.1-alpine3.21
WORKDIR /app
COPY . /app
RUN pip install -r requirements.txt
EXPOSE 5000
CMD ["python", "index.py"]
exigences.txt
dans le répertoire "Flask-App": Flask==2.3.2
Votre structure de répertoire devrait maintenant ressembler à ceci:
flask-app/
├── Dockerfile
├── index.py
└── requirements.txt
Building et exécutant l'image docker:
docker build -t flask-app .
docker images
docker run --name my-flask-app -d -p 5000:5000 flask-app
docker ps -a
http://127.0.0.1:5000
dans votre navigateur ou en utilisant curl
: curl http://127.0.0.1:5000
pour arrêter et supprimer le conteneur: docker container rm -f my-flask-app
pour supprimer l'image: docker image rm -f flask-app
poussant vers docker hub: Avant de pousser vers Docker Hub, créez un compte si vous n'en avez pas déjà. Alors:
Tag The Image for docker hub (remplacer
docker container rm -f my-flask-app
pousse l'image: docker push omerbsezer/dev-to-flask-app:latest
Cet exemple pratique démontre un workflow complet pour conteneuriser une application Python simple avec Docker. Pour plus de tutoriels Docker, AWS, Kubernetes, Linux, DevOps, Ansible, Machine Learning, Generative AI et SaaS Content, suivez ces liens:
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3