17.持续集成与容器管理
Docker version 19.03.2
CentOS7.6.1810
IntelliJ IDEA 2019.2
学习目标:
掌握DockerMaven插件的使用
掌握持续集成工具Jenkins的安装与使用
掌握容器管理工具Rancher的安装与使用
1 DockerMaven插件
对于数量众多的微服务,企业实际开发中使用的方法就是采用DockerMaven插件自动部署。
实现maven插件自动部署,需要先修改Docker的配置文件,在pom.xml里引入插件,最后通过cmd命令行将镜像上传。
Maven插件自动部署步骤:
备份Docker配置文件
cp /lib/systemd/system/docker.service /lib/systemd/system/docker.service.bak
编辑Docker配置文件
vi /lib/systemd/system/docker.service
修改daemon.json
vi /etc/docker/daemon.json
添加键值对
"hosts": ["0.0.0.0:2375","unix:///var/run/docker.sock"]
(2)刷新配置,重启服务
systemctl daemon‐reload
systemctl restart docker
docker start registry
(3)在工程pom.xml 增加插件配置
<build> <finalName>app</finalName> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring‐boot‐maven‐plugin</artifactId> </plugin> <plugin> <groupId>com.spotify</groupId> <artifactId>docker‐maven‐plugin</artifactId> <version>0.4.13</version> <configuration> <imageName>192.168.184.141:5000/${project.artifactId}:${project.version} </imageName> <baseImage>jdk1.8</baseImage> <entryPoint>["java", "‐jar", "/${project.build.finalName}.jar"]</entryPoint> <resources> <resource> <targetPath>/</targetPath> <directory>${project.build.directory} </directory> <include>${project.build.finalName}.jar</include> </resource> </resources> <dockerHost>http://192.168.184.141:2375</dockerHost> </configuration> </plugin> </plugins> </build>
以上配置会自动生成Dockerfile
FROM jdk1.8 ADD app.jar / ENTRYPOINT ["java","‐jar","/app.jar"]
(4)在windows的命令提示符下,进入工程tensquare_parent所在的目录
mvn install
进入tensquare_base 所在的目录,输入以下命令,进行打包和上传镜像
mvn docker:build ‐DpushImage
(5)进入宿主机 , 查看镜像
docker images
浏览器访问 http://192.168.184.141:5000/v2/_catalog ,输出
(6) 启动容器:
docker run ‐di ‐‐name=base ‐p 9001:9001
192.168.184.141:5000/tensquare_base:1.0‐SNAPSHOT
=================================================
部分内容来自于学习编程期间收集于网络的免费分享资源和工作后购买的付费内容。
如需获取教程配套的资源文件和一对一专属答疑支持,请加vx:kangmf24联系作者。