![](/img/trans.png)
[英]Insert a config file into a declarative Jenkins pipeline Docker container from Dockerfile
[英]How can I create a docker container from a Dockerfile in github inside a Jenkins pipeline?
我在github存储库中有一个Dockerfile。 我需要以某种方式设置我的工作区,为此,我想使用Dockerfile。
我似乎找不到Jenkinsfile的任何清晰示例,它将创建容器作为管道的单独阶段。
我该怎么做呢?
鉴于您使用的是管道(jenkinsfile)语法,这就是构建docker镜像的样子(最简单的实现方式):
stage('Build Docker Image')
{
DOCKER_TAG = "my_tag"
docker.withRegistry("${my_docker_registry}")
{
sh "docker build -t ${DOCKER_IMAGE}:${DOCKER_TAG}"
}
}
如果要构建容器然后对其进行测试,则需要存储对该容器的引用,并且可以使用以下代码进行操作:
stage('Build Docker Image')
{
DOCKER_TAG = "my_tag"
docker.withRegistry("${my_docker_registry}")
{
var my_image = docker.build("${DOCKER_IMAGE}:${DOCKER_TAG}")
my_image.inside
{
sh "echo 'Hello World'"
}
my_image.push()
}
}
请注意,如果您使用的是docker映像来运行管道,则需要将docker守护程序公开到该映像以构建映像(此处某处有一个“映像一直向下”的笑话...)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.