首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Jenkins管道上构建Docker映像,而不更改底层Jenkins VM的权限?

如何在Jenkins管道上构建Docker映像,而不更改底层Jenkins VM的权限?
EN

Stack Overflow用户
提问于 2018-11-27 06:55:15
回答 1查看 1K关注 0票数 1

我想使用Jenkins管道来构建、推送和部署我的Docker映像。

我明白了:

代码语言:javascript
复制
Got permission denied while trying to connect to the 
Docker daemon socket at unix:///var/run/docker.sock

Other questions on StackOverflow建议sudo usermod -a -G docker jenkins,然后重新启动Jenkins,但是我无法访问运行Jenkins的机器--无论如何,似乎奇怪的是,围绕Docker构建的Jenkins管道无法运行基本的Docker命令。

我怎样才能建造码头呢?

代码语言:javascript
复制
pipeline {
    agent  any
    stages {    
         stage('deploy') {
            agent {
                  docker {
                    image 'google/cloud-sdk:latest'
                    args '-v /var/run/docker.sock:/var/run/docker.sock'
                  }
            }
            steps {    
                 script {    
                    docker.build  "gcr.io/myporject/mydockerimage:1"
                } 
             }
          }
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-27 07:44:54

所示的管道定义是试图在一个码头容器内执行对接构建(google/cloud: container )。相反,如果主机上的jenkins用户拥有在主机上执行docker命令的权限,则应该执行以下操作。

代码语言:javascript
复制
pipeline {
  agent  any
  stages {
    stage('deploy') {
      steps {    
        script {    
          docker.build  "gcr.io/myporject/mydockerimage:1"
        } 
      }
    }
  }
}

在机器上单独安装和配置时,jenkins无法在没有适当许可的情况下执行docker命令,这一点并不奇怪。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53494242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档