【问题标题】:Openshift Jenkins(2) -- docker: command not foundOpenshift Jenkins(2) -- docker: 找不到命令
【发布时间】:2018-10-12 20:41:06
【问题描述】:

当使用由 openshift 提供的 jenkins pod 时。

使用如下所示的 Jenkins 文件

node {
    def app
    stage('Clone repository') {
        checkout scm
    }    
    stage('Build image') {
        app = docker.build("showcase")
    }
    stage('Test image') {
        app.inside {
            sh 'echo "Tests passed"'
        }
    }
    stage('Push image') {
        docker.withRegistry('https://registry.hub.docker.com', 'docker-hub-credentials') {
            app.push("${env.BUILD_NUMBER}")
            app.push("latest")
        }
    }
}

在运行构建时,我看到以下内容

docker build -t showcase .
/var/lib/jenkins/jobs/showcase-2/workspace@tmp/durable-018470ac/script.sh: line 2: docker: command not found

詹金斯图片上似乎没有docker:

openshift/jenkins:2

有人可以帮助我了解我可以做些什么来使 docker 可用吗?

【问题讨论】:

    标签: docker jenkins openshift


    【解决方案1】:

    您需要将 docker 安装到您的 Jenkins。您可以通过here 找到操作方法。使用以下 Dockerfile 代码,您可以创建自己的安装了 Docker 的 Jenkins:

    FROM jenkins/jenkins
    
    USER root
    
    RUN apt update && apt install -y apt-transport-https ca-certificates curl gnupg2 software-properties-common
    RUN curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
    RUN apt-key fingerprint 0EBFCD88
    RUN add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
    RUN apt update && apt install -y docker-ce
    RUN usermod -aG docker jenkins
    
    USER jenkins
    

    这不适用于 openshift/jenkins,因为它基于 RedHat,您需要替换那些 apt 命令。您也许可以找到关于 here 的一些提示。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-28
      • 2021-02-02
      相关资源
      最近更新 更多