Comment Docker implémente-t-il l'emballage ?
Termes liés à Docker :
(1) Miroir, conteneur, entrepôt
Caractéristiques de Docker :
(1) . Mots clés : conteneur, standard, isolation.
Pratique de déploiement de Docker :
1. Créez un fichier docker
Faites attention aux hypothèses que j'ai mentionnées : votre package jar ou votre package war Tous. ont été empaquetés avec succès et Docker installé avec succès.
Le contenu du dockerfile est le suivant :
FROM azul/zulu-openjdk:8 VOLUME /home/work/springDemo ADD springDemo-0.0.1-SNAPSHOT.jar app.jar RUN bash -c 'touch /app.jar' ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
FROM : sur quelle image il est basé
VOLUME : vous pouvez monter des dossiers locaux ou des dossiers d'autres conteneurs dans le conteneur
ADD : copiez le fichier
RUN : la commande RUN exécutera toute commande légale dans l'image actuelle et soumettre les résultats de l'exécution. Une fois l'exécution de la commande soumise, l'instruction suivante dans le Dockerfile sera automatiquement exécutée
ENTRYPOINT : La commande exécutée au démarrage du conteneur, mais il ne peut y avoir qu'une seule commande ENTRYPOINT dans un Dockerfile s'il y en a plusieurs. , seul le dernier sera exécuté.
Focus : L'emplacement du fichier dockerfile et du package jar ou du package war
Remarque : Le fichier Dockerfile nouvellement créé doit être dans le même dossier que le fichier jar. .
2. Génération du package Jar
Vous pourriez être confus lorsque vous voyez le package .jar dans l'image ci-dessus. Comment ce package est-il généré ? Jetons un coup d'œil à la manière dont ce package est généré.
Depuis que j'ai construit le projet via maven, je l'ai également construit via maven. Bien sûr, le principe est toujours que maven est installé dans votre environnement. Jetons un coup d'œil aux captures d'écran pour l'opération spécifique.
Après les opérations ci-dessus, le package jar est construit.
3. Générer une image
Description de la commande Shell : Le point clé est que vous devez accéder au dossier où le Dockerfile et le package jar ou le package war sont stockés.
Commande : sudo docker build -t springbootdemo .
Remarque : Le . après la commande doit être apporté.
Je ne me souviens pas de la signification du paramètre -t Vous pouvez voir l'explication des fonctions associées via sudo docker build --help. springbootdemo est le nom de l'image de la build.
Les opérations ci-dessus terminent la création de l'image Docker. Vérifiez si l'image est créée avec succès, commande : sudo docker images , vous pouvez voir que springbootdemo est l'image qui vient d'être créée.
4. Démarrez le conteneur
Les conteneurs sont en fait équivalents aux supports miroirs.
Capture d'écran de la commande de démarrage du conteneur :
Commande de démarrage : sudo docker run -d -p 8080:8080 springbootdemo
J'ai aussi oublié la signification des paramètres de -d -p, vous pouvez le vérifier dehors. 8080 : 8080 est un mappage de port. Sa logique et ses principes spécifiques, je vous suggère d'apprendre Docker et de regarder de plus près springbootdemo est le fichier image que j'ai mentionné ci-dessus.
Affichez les conteneurs actuellement en cours d'exécution : sudo docker ps
, si votre package jar ou votre package war est un programme Web comme le mien, vous pouvez le tester via le navigateur. Recommandations associées :
tutoriel Docker
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!