Openshift Jenkins(2)-泊坞窗:未找到命令

时间:2018-10-12 20:41:07

标签: docker jenkins openshift

使用由openshift配置的詹金斯豆荚时。

使用如下所示的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

jenkins映像上似乎没有docker:

openshift/jenkins:2

有人可以帮助我了解如何使Docker可用吗?

1 个答案:

答案 0 :(得分: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的一些提示。