Maison >Opération et maintenance >Docker >Comment docker pour le package de guerre

Comment docker pour le package de guerre

WBOY
WBOYoriginal
2023-05-13 16:02:081575parcourir

Le package War est un format de packaging pour les applications Web, qui contient généralement des fichiers statiques, des classes Java et d'autres fichiers de ressources d'applications Web. Les packages War peuvent être déployés via des conteneurs Docker, nous permettant de gérer et de maintenir plus efficacement les applications Web. Cet article utilisera des exemples pour présenter comment déployer le package War dans un conteneur Docker.

1. Installer Docker

Avant de commencer, nous devons d'abord installer Docker. Pour les systèmes Linux, vous pouvez l'installer via la commande suivante :

sudo apt-get install docker-ce

Une fois l'installation terminée, nous devons démarrer le service Docker :

sudo systemctl start docker

Pour utiliser le Commande Docker facilement, nous pouvons L'utilisateur actuel rejoint le groupe Docker :

sudo usermod -aG docker $USER

2. Écrivez Dockerfile

Dockerfile est le fichier de construction de l'image Docker, qui est utilisé pour décrire comment créer l'image Docker. Nous pouvons créer une image Docker contenant une application Web via Dockerfile.

Ce qui suit est un exemple simple de Dockerfile :

FROM tomcat:9.0.44-jdk11-openjdk

COPY myapp.war /usr/local/tomcat/webapps/

Dans le Dockerfile ci-dessus, l'image de base est d'abord spécifiée comme tomcat:9.0.44-jdk11-openjdk. Utilisez ensuite la commande COPY pour copier notre package War dans le répertoire webapps de Tomcat.

3. Construisez l'image Docker

Après avoir le Dockerfile, nous devons utiliser la commande docker build pour construire l'image Docker :

docker build -t myapp:v1 .

Parmi eux, - Le paramètre t est utilisé pour spécifier un nom et un numéro de version pour l'image. Ici, nous nommons l'image myapp:v1. Le "." final indique le répertoire actuel, qui est le répertoire où se trouve le Dockerfile.

Docker lira le Dockerfile et construira l'image selon la description. Une fois la construction terminée, nous pouvons utiliser la commande docker images pour afficher la liste de toutes les images afin de confirmer si notre image d'application a été créée avec succès.

docker images

4. Exécutez le conteneur Docker

Après avoir l'image, nous pouvons démarrer un conteneur Docker via la commande docker run :

docker run -d -p 8080:8080 myapp:v1

Parmi eux, le paramètre -d indique que le conteneur s'exécute en arrière-plan et le paramètre -p est utilisé pour spécifier que le port à l'intérieur du conteneur est mappé au port de l'hôte. Ici, nous mappons le port 8080 par défaut de Tomcat au port 8080 de l'hôte. Le myapp:v1 final indique le nom et la version de l'image Docker que nous souhaitons exécuter.

Une fois l'opération terminée, nous pouvons visiter http://localhost:8080/myapp via le navigateur pour vérifier si l'application Web fonctionne normalement.

5. Déploiement de la mise à jour

Lors de la mise à jour de l'application web, nous pouvons directement remplacer le package War correspondant. Si nous avons un nouveau myapp_new.war, pendant le processus de déploiement, il nous suffit de le copier dans le répertoire webapps de Tomcat et de redémarrer le conteneur Docker.

docker cp myapp_new.war <container_id>:/usr/local/tomcat/webapps/
docker restart <container_id>

6. Résumé

Grâce à la méthode de déploiement Docker, nous pouvons déployer et gérer des applications Web plus simplement et plus facilement. Cet article explique comment déployer le package War dans un conteneur Docker et fournit un exemple simple pour votre référence. Bien entendu, la méthode de déploiement spécifique doit être ajustée et optimisée en fonction de la situation réelle.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn