jenkins 如何在构建完成之后登陆到远程服务器拉取 docker image?

Jenkins 任务的类型是流水线,采用的从 Git 获取 Jenkinsfile 的方式配置任务。现有的 Jenkinsfile 已经完成了使用 Maven 构建应用、构建 docker 镜像并推送到阿里云容器服务。

不知道该怎么实现登录到远程服务器拉取镜像,并启动容器。在网上搜索到有使用 Publish over SSH,但是流水线类型的任务在 Jenkins 配置页面没有配置的地方,没有找到写到 Jenkinsfile 里的方法。

可能尝试的方法不对,希望大家多多赐教。

pipeline {
    agent any
    stages {
        stage('Build') { 
            agent {
                docker {
                    image 'maven:3-alpine' 
                    args '-v /root/.m2:/root/.m2' 
                }
            }            
            steps {
                sh 'mvn -B -DskipTests clean package' 
            }
        }
        stage('Containered') {
            steps {
                sh 'docker build -f ./Dockerfile -t demo.com/demo:build_${BUILD_NUMBER} . \
                    && docker push demo.com/demo:build_${BUILD_NUMBER} \
                    || exit 1'
            }
        }
        stage('Deploy') {
            steps {
                sh 'echo 这里不知道怎么处理'
            }
        }
    }
}
阅读 2.7k
1 个回答

已更改为使用自由风格的构建

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进