Jenkins--部署--02--打包Maven项目为Docker镜像并运行(pipeline)

Jenkins–部署–02–打包Maven项目为Docker镜像并运行(pipeline)


1、介绍

看这边文章前,先要看

Jenkins--部署--01--打包Maven项目为Docker镜像并运行

2、pipeline脚本

pipeline {
    agent any
    tools {
		//引用的工具,通过名称引用
        maven 'maven-3.3.9' 
    }
	environment {
        server_name='demo1'
		port='8888'
    }
    stages {
        stage('克隆代码') {
            steps {
				echo '克隆代码'
				checkout([$class: 'GitSCM', 
						branches: [[name: '*/master']], 
						extensions: [], 
						userRemoteConfigs: [[credentialsId: '3a28f7f4-c183-4977-8b83-0f130c243324', url: 'https://gitee.com/DanShenGuiZu/jenkins.git']]
				])
            }
        }
		stage('打包') {
            steps {
                echo '打包'
				dir('./demo1') {
					echo '切换当前目录'
					echo pwd()
					sh 'mvn clean package -Dmaven.test.skip=true'
				}
				
            }
        }
		stage('删除容器和镜像') {
            steps {
                echo '删除容器和镜像' 
				sh 'docker stop $server_name'
				sh 'docker rm -f $server_name'
				sh 'docker rmi $server_name'
				
            }
        }
		stage('构建镜像') {
            steps {
                echo '构建镜像'
				dir('./demo1') {
					// 拷贝jar
					sh 'cp ./target/*.jar  ./docker'
					// 修改jar权限
					sh 'chmod 755 ./docker/*.jar'
					sh 'cd ./docker && docker build -t $server_name .'
				}
				
            }
        }
		stage('运行镜像') {
            steps {
				sh 'docker run -d -p $port:$port --name $server_name $server_name'
            }
        }	
    }
}


3、测试结果

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Jenkins是一款开源的持续集成工具,它可以帮助开发团队自动化地构建、测试和部署软件项目。在Jenkins中配置Docker插件后,我们可以结合Docker技术来进行自动化部署Docker是一种轻量级的容器化技术,它可以将应用程序和其依赖的环境打包成一个可移植的容器,方便在不同的环境中部署运行。 而Kubernetes(简称K8s)是一个开源的容器编排平台,它可以管理和调度Docker容器集群。通过在K8s中创建Pod、Service等资源对象,我们可以实现Spring Cloud项目的自动化部署。 首先,我们可以使用JenkinsPipeline功能来编写自动化部署的流水线脚本。流水线脚本可以定义一系列的步骤,包括构建、测试和部署等。在流水线脚本中,我们可以使用Docker插件来创建Docker镜像,并将其推送到Docker仓库。接着,我们可以使用K8s插件来在Kubernetes集群中创建相关的资源对象,如Deployment和Service等。 在自动化部署过程中,我们可以将Spring Cloud项目的源代码与Dockerfile放在一个Git仓库中,并通过Jenkins的Webhook功能来触发自动化部署流水线。当有新的代码提交时,Jenkins会自动拉取最新的代码,并执行流水线脚本。在流水线脚本中,我们可以使用Maven或Gradle等工具来构建打包Spring Cloud项目。然后,通过Docker插件创建可运行Docker镜像,并将其推送到Docker仓库。 最后,使用K8s插件在Kubernetes集群中创建相关的资源对象,如Deployment和Service等。通过创建Deployment对象,我们可以定义应用程序的副本数和容器的镜像。通过创建Service对象,我们可以定义应用程序可以访问的网络端口和负载均衡规则。 通过JenkinsDocker和Kubernetes的自动化部署,我们可以实现Spring Cloud项目的快速、可靠和可重复部署。这种自动化部署的方式可以提高开发效率和部署质量,同时也降低了运维成本和风险。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值