Gitlab-CI docker-maven-plugin 打包
- 必备条件
需要开启宿主机docker的2375端口#编辑docker.service vi /usr/lib/systemd/system/docker.service #在execstart属性上新增属性 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375 #重载 daemon systemctl daemon-reload #重启doker systemctl restart docker
2.编写gitlab-ci文件指定Docker-host
stages:
- package
job_docker_package:
stage: package
image: maven:3.6.3-jdk8
variables:
DOCKER_HOST: tcp://172.17.0.1:2375
script:
- mvn clean package -DskipTests
- mvn docker:build docker:push docker:removeImage
tags:
- 'maven'
Tips
- gitlabCI过程中报 Broken pipe
原因是使用docker-maven-plugin插件的情况下
#imageName 标签内必须严格遵循:[a-z0-9-.],也就是说只能出现 a~z 小写字母,0~9,下划线"" 和 点"."–><imageName>push.project.2docker</imageName>
- 2375端口拒绝访问
#查看2375 端口开放情况 netstat -anp | grep 2375 #在调用端*问 2375端口 看是否有返回 正常是有一串json返回 #xxx为docker主机IP curl http://xxx:2375