【发布时间】:2019-07-21 19:26:25
【问题描述】:
我的存储库中有Jenkinsfile:
pipeline {
agent {label 'slavedev'}
stages {
stage('Build') {
agent {
docker {
image 'myimage:latest'
}
}
steps {
sh 'mvn -version'
}
}
}
}
Dockerfile 中的myimage:
ROM maven:latest
COPY settings.xml /root/.m2/
当我尝试通过docker run -it myimage:latest /bin/bash 手动启动此图像时,我看到了:
root@9a963055c12f:/tmp# ls -lta /root/.m2/
total 12
-rw-r--r-- 1 root root 129 Jul 21 18:53 copy_reference_file.log
drwxr-xr-x 1 root root 82 Jul 21 18:53 .
-rw-r--r-- 1 root root 327 Jul 21 18:53 settings-docker.xml
drwxr-xr-x 2 root root 6 Jul 21 18:53 repository
drwx------ 1 root root 17 Jul 21 17:58 ..
-rw-rw-r-- 1 root root 2897 Jul 21 17:57 settings.xml
您看,我们在.m2 中有settings.xml。
但是,当我尝试通过下载源代码来执行 Jenkins-job 时,我看到:
[exec] [DEBUG] Reading global settings from /usr/share/maven/conf/settings.xml
[exec] [DEBUG] Reading user settings from ?/.m2/settings.xml
而且,我不知道 Docker 容器中有什么。我只看到我的来源列表。
drwxrwxr-x 5 jenkins jenkins 41 Jul 21 17:52 src
-rw-rw-r-- 1 jenkins jenkins 3212 Jul 21 17:52 build.xml
-rw-rw-r-- 1 jenkins jenkins 32014 Jul 21 17:52 pom.xml
并且在本地工作的作业在容器中不起作用。真的,我什么都试过了,请帮忙!我什么都玩了,两晚没睡,但我真的找不到,如何运行这个!setting.xml 带有私有存储库和此存储库凭据的文件。
【问题讨论】:
标签: xml maven docker jenkins jenkins-pipeline