Conteneur Docker – Convertir l’application Web Python en images et Pus Live
Découvrez comment tirer parti de Docker pour convertir une application Web Python Flask en images et les transmettre au hub Docker.
Pour un déploiement et une exécution d'applications Web plus résilients, flexibles et rentables, la conteneurisation d'applications est l'une des approches les plus populaires dans le monde. Dans cet article, j'expliquerais comment tirer parti de Docker pour convertir une application Web Python Flask en images et les pousser vers le hub Docker. À la fin de cet article, vous pourrez apprendre à déployer des images en direct sur le hub Docker qui seraient utilisées pour se connecter au Cloud.
Table des matières : convertir l'application Web Python en images et diffuser en direct à l'aide de Docker
- Qu'est-ce que Docker
- Créer un identifiant et télécharger l'application Docker (version Macbook)
- Documents sur l'application Flask
- Dockerfile Doc
- Créer une nouvelle balise d'image localement
- Poussez la nouvelle image vers Docker Hub
- Script Python complet de conversion de l'application Web Python en images et diffusion en direct à l'aide de Docker
Qu'est-ce que Docker
Docker est une plate-forme open source qui permet aux développeurs d'automatiser le déploiement et l'exécution d'applications dans des conteneurs. Les conteneurs sont des environnements légers, portables et isolés qui regroupent une application avec ses dépendances, telles que des bibliothèques et des configurations, permettant une exécution cohérente et fiable dans différents environnements informatiques.
Voici quelques concepts clés liés à Docker :
- Conteneurisation : Docker utilise la technologie de conteneurisation, qui implique la création et l'exécution de conteneurs. Les conteneurs fournissent un environnement isolé et reproductible, garantissant que les applications peuvent s'exécuter de manière cohérente sur différents systèmes.
- Image Docker : une image est un package léger, autonome et exécutable qui inclut tout le nécessaire pour exécuter une application, y compris le code, l'environnement d'exécution, les bibliothèques et les dépendances. Les images servent de blocs de construction pour les conteneurs.
- Conteneur Docker : un conteneur est une instance d'une image. Il s'exécute en tant que processus distinct sur le système hôte, isolé des autres conteneurs et de l'infrastructure sous-jacente. Les conteneurs sont portables et peuvent être facilement déplacés entre différents systèmes sur lesquels Docker est installé.
- Dockerfile : un Dockerfile est un fichier texte qui contient des instructions pour créer une image Docker. Il spécifie l'image de base, la configuration, les dépendances et les commandes requises pour configurer l'environnement de l'application.
- Docker Registry : un registre Docker est un référentiel qui stocke des images Docker. Le registre le plus couramment utilisé est Docker Hub, qui est un registre public hébergeant un grand nombre d'images prédéfinies. De plus, vous pouvez configurer des registres privés pour stocker et partager vos propres images Docker au sein de votre organisation.
- Docker Compose : Docker Compose est un outil de définition et de gestion d'applications multi-conteneurs. Il vous permet de décrire des environnements d'application complexes à l'aide d'un fichier YAML, puis de les déployer et de les gérer comme une seule unité.
- Orchestration : Docker Swarm et Kubernetes sont des plates-formes d'orchestration qui permettent de gérer et de mettre à l'échelle des applications conteneurisées sur plusieurs hôtes ou clusters. Ils fournissent des fonctionnalités pour le déploiement automatisé, la mise à l'échelle, l'équilibrage de charge et l'autoréparation des conteneurs.
Docker a gagné en popularité en raison de sa capacité à simplifier l'empaquetage, le déploiement et la mise à l'échelle des applications. Il favorise un flux de travail de développement cohérent et efficace, facilitant la collaboration et le déploiement d'applications dans différents environnements pour les équipes.
Créer un identifiant et télécharger l'application Docker
Docker fournit un niveau gratuit qui comprend 1 référentiel privé qui n'est pas public. Une fois qu'un nouveau compte a été créé, nous devons télécharger l'application Docker et l'installer sur un appareil local. Il a également une version Windows, Linux, OS
Documents sur l'application Flask
Tout d'abord, nous devons préparer un ensemble complet de documents d'application Flask basés sur la structure du framework Flask. L'une des principales choses que nous devons vérifier est la valeur du port et de l'hôte dans app.py. Assurez-vous d'ajouter ces paramètres dans le script de votre application principale Flask.
if __name__ == "__main__" :
app . run ( debug = True , host = "0.0.0.0" , port = 8000 )
Dockerfile Doc
Au niveau racine de l'application Flask qui se trouve au même étage que requirements.txt, nous devons ajouter un Dockerfile. Dans ce fichier, nous installons et configurons principalement plusieurs composants critiques pour les images Docker :
- Version linguistique
- Chemin du répertoire
- COPIER les dépendances
- Exécuter et installer les dépendances
- COPIER les documents de l'application Flask et les placer dans un emplacement
- Commandez et exécutez
Voici un exemple :
FROM python : 3.9.6
WORKDIR /python-flaskdemo
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY ./democn ./democn
CMD [ "python" , "./democn/app.py" ]
Commandez et créez une nouvelle balise Docker Image localement
Lorsque tous les documents sont prêts dans le dossier, nous pouvons cd le dossier et créer l'image en utilisant les documents par la commande comme suit :
docker build -t flaskdemo .
Pour flaskdemo ici, c'est le nom de la balise d'image localement. Vous pouvez nommer ce que vous voulez. Le nom de l'image s'affichera dans l'interface locale de Docker Desktop après avoir été construit avec succès
Une fois la création de l'image terminée, vous pouvez essayer de l'exécuter localement et vérifier si l'application Web fonctionne aussi bien que prévu. Ce processus est similaire à l'application Flask exécutée localement
docker run -p 8000:8000 flaskdemo
Pousser les balises d'image Docker locales vers Docker Hub
Il est maintenant temps de transférer l'image de votre application Web prête vers Docker Hub. Fondamentalement, c'est un processus pour le lancer. Il y a plusieurs étapes dans votre terminal :
Étape 1 : connexion Docker
Utilisez cette commande pour vérifier si le bureau Docker est déjà connecté au hub Docker. Assurez-vous qu'il est connecté au hub, ou vous devez d'abord vous connecter en utilisant les informations d'identification que vous avez créées précédemment.
Étape 2 : image du menu fixe
Entrez cette commande pour rechercher la balise d'image que vous allez mettre en ligne. Copiez-le et posez-le d'abord et il sera utilisé dans un instant.
Étape 3 : tag docker et pousser une image existante vers Docker Hub
Tapez cette commande avec l'ID de balise que vous venez de copier, le chemin du projet Docker Hub et le nouveau nom d'image affiché sur Docker Hub. Le nom de l'image peut être différent de votre nom local car Docker Desktop pousserait les configurations et les documents rendus vers la nouvelle image.
docker tag tagID dockerHubname/projectname:newimagename
Script Python complet de conversion de l'application Web Python en images et diffusion en direct à l'aide de Docker
Si vous êtes intéressé par Chapitre 81 – Convertir l'application Web Python en images et les diffuser en direct à l'aide de Docker, veuillez vous inscrire à notre newsletter en ajoutant le message 'Chapter 81 + Full Docker Image Convert scripts for Python Web Apps' . Nous vous enverrons le script lorsque le script d'application à jour sera en ligne.
J'espère que vous apprécierez la lecture du chapitre 81 – Convertir l'application Web Python en images et les diffuser en direct à l'aide de Docker. Si vous l'avez fait, veuillez nous soutenir en faisant l'une des choses énumérées ci-dessous, car cela aide toujours notre chaîne.
- Soutenez et faites un don à notre chaîne via PayPal ( paypal.me/Easy2digital )
- Abonnez-vous à ma chaîne et activez la cloche de notification Chaîne Youtube Easy2Digital .
- Suivez et aimez ma page Page Facebook Easy2Digital
- Partagez l'article sur votre réseau social avec le hashtag #easy2digital
- Vous vous inscrivez à notre newsletter hebdomadaire pour recevoir les derniers articles, vidéos et codes de réduction Easy2Digital
- Abonnez-vous à notre abonnement mensuel via Patreon pour profiter d'avantages exclusifs ( www.patreon.com/louisludigital )