如何使用我自己的global settings.xml设置正式的maven docker映像?
我第一次在GitLab CI中使用docker。我很高兴GitLab为我做了大部分工作。 我使用的是maven docker官方图片如何使用我自己的global settings.xml设置正式的maven docker映像?,maven,docker,Maven,Docker,我第一次在GitLab CI中使用docker。我很高兴GitLab为我做了大部分工作。 我使用的是maven docker官方图片maven:3-jdk-8() 现在,我想在docker映像上设置全局settings.xml,该映像包含部署阶段nexus服务器的数据 我试图遵循以下指南:,但不幸的是,我无法连接到docker映像的bash root@build:~# docker run maven:3-jdk-8 /bin/bash -it bash: cannot set terminal
maven:3-jdk-8
()
现在,我想在docker映像上设置全局settings.xml
,该映像包含部署阶段nexus服务器的数据
我试图遵循以下指南:,但不幸的是,我无法连接到docker映像的bash
root@build:~# docker run maven:3-jdk-8 /bin/bash -it
bash: cannot set terminal process group (-1): Inappropriate ioctl for device
bash: no job control in this shell
root@7d62e8b066f7:/# exit
如何将自己的全局
settings.xml
添加到我的maven docker映像中?您可以使用Dockerfile
扩展现有的maven docker映像来创建/构建您自己的映像,即您的案例中的maven:3-jdk-8
您可以在其中添加一行,如下所示:-
COPY settings.xml /usr/share/maven/ref/
您可以有多个设置。xml
以不同的方式命名(显然),您可以根据需要使用它们
比如mvn-s/usr/share/maven/ref/settings-.xml
目标和使用情况不同的人这座建筑似乎已经运行了。新映像将列在主机系统上。虽然我收到了错误消息
拉docker image maven:3-jdk-8-Nexus。。。错误:作业失败:在执行应在该映像上执行的gitlab ci作业时,未找到maven:3-jdk-8-Nexus的守护进程的错误响应。好的,我认为这是gitlab ci运行程序的配置问题。我会回来报告:)您可以在gitlab docker Repositories创建自己的映像,并使用gitlab ciI提取相同的映像。可以通过向/etc/gitlab runner/config.toml
添加pull\u policy=“if not present”
来解决此问题。现在我遇到了另一个问题,我被拒绝运行在作业期间下载的可执行文件。一旦我解决了这个问题,我就可以告诉您它是否适用于settings.xml
:)