【发布时间】:2018-02-08 05:11:46
【问题描述】:
我正在尝试在我拥有的 docker 容器内(或针对)运行我的管道测试。我最初使用 Dockerfile 来创建容器,但测试总是针对执行作业的 jenkins 节点运行。我修改了我的 jenkinsfile 以使用标准的东西,但仍然没有得到我期望的结果。
我最终想要完成的是:
- 抛出一个 docker 容器
- 将我的源代码复制到容器中
- 在容器上运行我的 python 脚本
我有 1 和 2 工作,但没有 3。现在,如果我可以针对容器运行测试,我会很高兴,这就是我修改 Jenkinsfile 以使其更简单的原因。
我的 Jenkins 文件:
pipeline {
agent {
docker { image 'node:7-alpine' }
}
stages {
stage('Test') {
steps {
sh 'pwd'
sh 'ls -al'
}
}
}
}
当我在本地运行 docker run node:7-alpine pwd、docker run node:7-alpine ls -al 时,我得到以下信息:
/
和
bin
dev
etc
home
lib
linuxrc
media
mnt
opt
proc
root
run
sbin
srv
sys
tmp
usr
var
但在詹金斯我得到:
[test_job] Running shell script
+ pwd
/srv/jenkins/workspace/test_job
和
[test_job] Running shell script
+ ls -al
total 36
drwxr-x--- 4 5003 5003 4096 Aug 29 20:44 .
drwxr-xr-x 4 root root 4096 Aug 29 20:44 ..
drwxr-x--- 8 5003 5003 4096 Aug 29 20:44 .git
-rw-r----- 1 5003 5003 1184 Aug 29 19:24 .gitignore
-rw-r----- 1 5003 5003 802 Aug 29 19:47 Dockerfile
-rw-r----- 1 5003 5003 247 Aug 29 20:44 Jenkinsfile
-rw-r----- 1 5003 5003 417 Aug 29 20:24 OriginalJenkinsfile
-rw-r----- 1 5003 5003 2534 Aug 29 19:24 README.md
drwxr-x--- 5 5003 5003 4096 Aug 29 19:24 framework
【问题讨论】:
标签: dockerfile jenkins-pipeline