公司的技术栈是基于Spring Cloud + Docker的,准备做CICD,最近在测试Github上几个docker-maven-plugin,在测试的过程中,发现坑还是很多的;
fabric8io/docker-maven-plugin和spotify / dockerfile-maven(spotify / docker-maven-plugin)是两个比较规范正规文档又齐全的docker-maven-plugin,spotify / docker-maven-plugin已经不再维护,作者新开了一个项目spotify / dockerfile-maven,更好用;
经过比较,选择了文档更为规范,使用方式根为mavenish的fabric8io/docker-maven-plugin;
阿里云提供了容器镜像服务SASS服务,我们可以使用其来管理我们的镜像;
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>${docker-maven-plugin.version}</version>
<configuration>
<images>
<image>
<name>fengxin58/%a:%v</name>
<registry>registry.cn-hangzhou.aliyuncs.com</registry>
<build>
<dockerFileDir>
${basedir}/src/main/docker
</dockerFileDir>
<assembly>
<descriptorRef>artifact</descriptorRef>
</assembly>
<tags>
<tag>latest</tag>
<tag>${project.version}</tag>
</tags>
</build>
</image>
</images>
</configuration>
</plugin>
如果是阿里云主账号,注意邮箱部分,一定不能落下;
<server>
<id>Registry 域名</id>
<username>私仓账号</username>
<password>私仓密码</password>
<configuration>
<email>邮箱</email>
</configuration>
</server>
<servers>
<server>
<id>registry.cn-hangzhou.aliyuncs.com</id>
<username>chenzhenyang@fengxin58</username>
<password>xxxx</password>
</server>
</servers>
注意后面的@fengxin58,每个企业账号都有;
How To Push Docker Images To Docker Hub Repository Using Docker Maven plugin
springboot 利用 docker-maven插件生成docker镜像并推送到镜像仓库
maven构建docker镜像三部曲之三:推送到远程仓库(内网和阿里云)