Tout d'abord, vous devez activer la fonction d'accès à distance Docker afin que les opérations à distance puissent être effectuées.
Centos 6
Modifiez le fichier / etc / default / docker et prenez effet après le redémarrage (Service Docker Restart).
Docker_opts = "-h = unix: ///var/run/docker.sock -h = 0.0.0.0: 2375"
Centos 7
Ouvrez le fichier /usr/lib/systemd/system/docker.service et modifiez la ligne ExecStart.
Copiez le code comme suit: execstart = / usr / bin / dockerd -h tcp: //0.0.0.0: 2375 -h Unix: ///var/run/docker.sock
Prendre effet après le redémarrage
SystemCTL Daemon-Reload SystemCTl Restart Docker.Service
Si le test prend effet
Curl http://127.0.0.1:2375/info
Nouveau projet Maven
La configuration pom.xml est la suivante:
<project xmlns = "http://maven.apache.org/pom/4.0.0" xmlns: xsi = "http://www.w3.org/2001/xmlschema-instance" xsi: schemalation = "http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd "> <ModelVersion> 4.0.0 </ ModelVersion> <ProupId> test.springboot.docker </proupId> <ArtifActid> Docker-Springboot </tatifactid> <version> 0.0.1-snapshot </ version> <GroupId> org.springframework.boot </prôdId> <ArtifactId> printemps-boot-starter-parent </refactive> <version> 1.5.3.3 <GroupId> org.springframework.boot </proupId> <Artifactid> printemps-boot-starter-web </ artifactid> </dependency> <dependency> <proupId> org.springframework.boot </prouvendid> <Artifactid> Spring-Boot-starter-test </ artifactisid> <cate> Test> Test </scope> </stimence> Test> Test> Test> Test </scope> </sopence> <Duild> <Glugins> <GroupId> org.springFramework.boot </prômId> <ArtifActid> Spring-Boot-Maven-Plugin </ GroupId> </Glugin> <Glugin> <ProupId> com.spotify </proupId> <Artifactid> Docker-Maven-Plugin </RetifActid> <De version> 0.4.14 </ Version> <ImageName> $ {docker.image.prefix} / $ {project.artifactid} </ ImageName> <DockerDirectory> Src / Main / docker </cockerDirectory> <DockerHost> http://192.168.1.200:2375 </DockerHost> <Sessiers> <Arnutory> $ {project.build.directory} </ Directory> <clut> $ {project.build.finalname} .jar </clure> </ ressource> </ ressources> </FIGIGURATION> </ Plugin> </glugins> </uild> </propre>imageName: spécifie le nom de l'imagedockerDirectory: spécifiez l'emplacement du dockerfiledockerHost: spécifiez l'adresse API distante dockerresources: fait référence aux fichiers qui doivent être assemblés avec Dockerfile et utilisés lors de la création d'images. Généralement, les packages de bocaux d'application doivent être inclusCréer des cours Java
package bonjour; import org.springframework.boot.springapplication; import org.springframework.boot.autoconfigure.springbootapplication; import org.springframework.web.bind.annotation.requestmapping; import; org.springframework.web.bind.annotation.restController; @ SpringbootApplication @ restControllerPublic class Application {@RequestMapping ("/") public String home () {return "Hello docker world"; } public static void main (String [] args) {springApplication.run (application.class, args); }}Créer un dockerfile
Créez un fichier nommé DockerFile dans le répertoire SRC / Main / Docker, et la configuration est la suivante:
De Javavolume / tmpadd docker-springboot-0.0.1-snapshot.jar app.jarrun bash -c 'touch /app.jar'env java_opts = "" entryPoint ["sh", "-c", "java $ java_opts -java.security.egd = fichier: / dev /./ urando
De Java: fait référence à l'image Java fournie par le Docker Hub officiel. Avec cette image de base, le DockerFile peut directement obtenir son statut via l' FROM - c'est-à-dire que java est déjà installé dans le conteneur, puis exécuter l'application Spring Boot via des commandes personnalisées.
Volume / TMP: répertoire Create / TMP et dossier de données persistant vers Docker, car le conteneur Tomcat intégré utilisé par Spring Boot utilise /tmp comme répertoire de travail par défaut.
Ajouter docker-springboot-0.0.1-snapshot.jar app.jar: copier le package de jar d'application sur /app.jar
Entrée: indique la commande exécutée par défaut après l'exécution du conteneur
La structure du répertoire complet est la suivante:
Exécutez la commande suivante pour créer une image docker:
package docker: build
Image de démarrage de Docker
Vérifiez si le projet est téléchargé avec succès
Démarrez le code de copie d'image comme suit: Docker Run -P 8888: 8080 Springboot / Docker-Springboot
Accès via un navigateur
Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.