我正在尝试使用docker-pipeline插件和以下groovy管道:
pipeline {
agent any
stages {
stage("Some Impressive Stage Name") {
steps {
script {
docker.image("alpine").inside() {
sh "echo 'hello world!'"
}
}
}
}
}
}
字符串
这个简单的管道永远不会结束。我可以确认图像正在被拉取并在不到两秒的时间内运行,但管道只是在hello world
步骤上停止。我做错什么了?
我正在运行Jenkins版本2.401.1
和docker-pipeline插件版本563.vd5d2e5c4007f
1条答案
按热度按时间xjreopfe1#
我找到了一种绕过插件的方法,只使用
docker run
而不是旧的插件。不好看,但很管用:字符串
这显然意味着你必须手动注入环境变量、卷、秘密、证书等。但是你可以完全控制它,而不是受一些被遗忘已久的jenkins插件开发人员的摆布。
当然,你可以使用一个单独的dockerfile(甚至是一个docker-compose文件),但我更喜欢我的CI管道脚本在一个脚本中,而不是多个文件中。这是一个解决方案。