![](/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.