Jenkins 如何通过文件将openshift构建的容器映像推送到私有注册表

Jenkins 如何通过文件将openshift构建的容器映像推送到私有注册表,jenkins,openshift,docker-registry,Jenkins,Openshift,Docker Registry,使用OpenShiftocnewapp命令,我构建了一个容器映像。我希望将生成的图像推送到私有注册表,而不是将图像推送到本地容器注册表。当我使用Jenkins for CI/CD时,我希望自动生成映像并将其推送到私有注册表的过程 我能够实现生成部分。但通过Jenkins文件将图像推送到私人注册中心却让人震惊。任何关于如何实现这一点的建议都是值得赞赏的。本文讨论了如何实现这一点 pipeline { environment { registry = "gustavoapolinario

使用OpenShift
ocnewapp
命令,我构建了一个容器映像。我希望将生成的图像推送到私有注册表,而不是将图像推送到本地容器注册表。当我使用Jenkins for CI/CD时,我希望自动生成映像并将其推送到私有注册表的过程

我能够实现生成部分。但通过Jenkins文件将图像推送到私人注册中心却让人震惊。任何关于如何实现这一点的建议都是值得赞赏的。

本文讨论了如何实现这一点

pipeline {
  environment {
    registry = "gustavoapolinario/docker-test"
    registryCredential = 'dockerhub'
    dockerImage = ''
  }
  agent any
  tools {nodejs "node" }
  stages {
    stage('Cloning Git') {
      steps {
        git 'https://github.com/gustavoapolinario/node-todo-frontend'
      }
    }
    stage('Build') {
       steps {
         sh 'npm install'
       }
    }
    stage('Test') {
      steps {
        sh 'npm test'
      }
    }
    stage('Building image') {
      steps{
        script {
          dockerImage = docker.build registry + ":$BUILD_NUMBER"
        }
      }
    }
    stage('Deploy Image') {
      steps{
         script {
            docker.withRegistry( '', registryCredential ) {
            dockerImage.push()
          }
        }
      }
    }
    stage('Remove Unused docker image') {
      steps{
        sh "docker rmi $registry:$BUILD_NUMBER"
      }
    }
  }
}

已经尝试过了,但没有运气,因为我在Jenkins日志中看到“Docker命令未找到”错误。我已经在Jenkins服务器上安装了Docker管道插件