本文主要介绍如何使用Maven插件docker-maven-plugin将SpringBoot应用打包为Docker镜像,并上传到私有镜像仓库Docker Registry的过程。
1、搭建Docker Registry注册服务docker run -d -p 5000:5000 --restart=always --name registry2 registry:22、Docker开启远程API
服务器防火墙开启2375端口,用vim编辑器修改docker.service文件,注意2375端口是未加密的docker socket,即远程root无密码访问主机,无加密对外开放此端口会引起网络攻击,加密方法可以参考我之前的文章《Docker对外开放2375端口引发安全漏洞分析与解决方案》
3、让Docker支持http上传镜像:5000:docker注册服务
echo '{ "insecure-registries":["Your server IP:5000"] }' > /etc/docker/daemon.json
4、重新启动Docker服务:
systemctl daemon-reload // 1,加载docker守护线程 systemctl restart docker // 2,重启docker5、将SpringBoot应用打包为Docker镜像
- 在项目src/main/resources下创建pem目录
- 将《Docker对外开放2375端口引发安全漏洞分析与解决方案》中生成的ca.pem、cert.pem、key.pem三个文件拷贝到pem目录下
- 修改pom.xml文件:
org.springframework.boot spring-boot-maven-plugincom.spotify docker-maven-plugin1.2.2 build-image package build mall/${project.artifactId}:${project.version} https:// Your server IP:2375 java:8 ["java", "-jar", "-Dspring.profiles.active=prod","/${project.build.finalName}.jar"] ${project.basedir}/src/main/resources/pem / ${project.build.directory} ${project.build.finalName}.jar
- Run build package to upload instance to docker
docker images
到此,任务完成。



