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



使用 OpenShiftoc new-app命令,我构建了一个容器映像。我想将生成的映像推送到专用注册表,而不是将映像推送到本地容器注册表。当我使用 Jenkins for CI/CD 时,我想自动化生成映像并推送到私有注册表的过程。

我能够实现世代部分。但是通过 Jenkinsfile 将图像推送到私有注册表时感到震惊。任何关于如何实现这一目标的指示都值得赞赏。

这篇 Jenkins 构建 Docker 映像和发送到注册表的文章讨论了如何做到这一点。

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"
}
}
}
}

最新更新