Ce tutoriel montre la création et le déploiement d'une application Flask simple à l'aide de Docker. Nous aborderons la création d'un Dockerfile, la création de l'image, l'exécution d'un conteneur et même la transmission de l'image vers Docker Hub. Pour ceux qui ne connaissent pas les principes fondamentaux de Docker, consultez cet article précédent :
Commençons par un exemple pratique :
Configuration du projet :
index.py
contenant cette simple application Flask :# 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
(sans 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"]
requirements.txt
dans le répertoire "flask-app":<code>Flask==2.3.2</code>
Votre structure de répertoires devrait maintenant ressembler à ceci :
<code>flask-app/ ├── Dockerfile ├── index.py └── requirements.txt</code>
Création et exécution de 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
docker container rm -f my-flask-app
docker image rm -f flask-app
Pousser vers Docker Hub :
Avant de passer à Docker Hub, créez un compte si vous n'en avez pas déjà un. Alors :
omerbsezer
par votre nom d'utilisateur Docker Hub) :docker tag flask-app omerbsezer/dev-to-flask-app:latest
docker push omerbsezer/dev-to-flask-app:latest
Vous pouvez ensuite voir votre image sur Docker Hub. Une capture d'écran serait placée ici.
Conclusion :
Cet exemple pratique illustre un workflow complet pour conteneuriser une application Python simple avec Docker. Pour plus de didacticiels Docker, de contenu AWS, Kubernetes, Linux, DevOps, Ansible, Machine Learning, Generative AI et SAAS, suivez ces liens :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!