阿粉想和你详细聊聊 Jenkins 配置那些事

简介: 在 阿粉手把手教你在 CentOS7 下搭建 Jenkins 这篇文章中,阿粉写了如何搭建 Jenkins ,这篇文章就结合阿粉的工作经验,来说说 Jenkins 的那些详细配置,这些配置主要就是当我们让 Jenkins 帮我们部署完成之后,需要执行的脚本

在  阿粉手把手教你在 CentOS7 下搭建 Jenkins 这篇文章中,阿粉写了如何搭建 Jenkins ,这篇文章就结合阿粉的工作经验,来说说 Jenkins 的那些详细配置,这些配置主要就是当我们让 Jenkins 帮我们部署完成之后,需要执行的脚本

先说一下,这些配置只是起参考价值,具体还是需要根据自己的情况来呦~

对于后端来说,配置文件主要在构建之后需要执行的操作( # 后面为注释内容)

#!/bin/sh
tomcat_path=/usr/local/tomcats/tomcat-test        #定义 tomcat 的位置
project_web=$tomcat_path/test.war      #定义项目打包位置
if [ -f $project_web ] ;then 
 echo -- stop tomcat
 #kill tomcat pid
 pidlist=`ps -ef | grep tomcat-test | grep -v grep | awk '{print $2}'`   #查看是否有进程正在运行
 if [ "$pidlist" = "" ]        #没有进程在运行,则提示
  then
   echo "no tomcat pid alive!"
 else             #有进程在运行,杀掉
    echo "tomcat Id list :$pidlist"
    kill -9 $pidlist
    echo "KILL $pidlist:"
    echo "tomcat stop success"
 fi 
    echo -- 正在部署$project_web         #将进程杀掉之后,重新进行部署
    if [ -f $tomcat_path/webapps/test.war ] ;then   #查看 /webapps 目录下是否有以前的 war 包,如果有,删掉
        rm -f $tomcat_path/webapps/test.war
        rm -rf $tomcat_path/webapps/test
        echo -- 正在删除$project_web
    fi 
        cp $project_web $tomcat_path/webapps/test.war #将新生成的 war 包复制到 /webapps 目录下
    # start tomcat
    echo $tomcat_path
    #sleep 5
    export JAVA_HOME=/usr/java/latest
    #$tomcat_path/bin/startup.sh
    ${tomcat_path}/bin/startup.sh 
else 
echo $BUILD_ID - 未找到$project_web
fi

对于前端来说,主要就是需要注意一下前端特有的打包方式:

npm install --unsafe-perm
ng build --prod --env=test --output-path=typing-dev --base-href ./

对于 k8s 来说,需要在构建时创建事件:

#!/bin/sh -l 
examimage_path=reg.afen.com/library/test:1.0.0    #定义镜像在 harbor 上的位置
cp test-web/target/test-web.war test-web/src/profiles/k8s_prod/test-web.war  #将 war 复制到目标目录下
cd test-web/src/profiles/k8s_prod   #进入目标目录
docker build -t $examimage_path .   #开始创建新的镜像,注意后面还有一个".",要不然命令是不会生效的
docker push $examimage_path    #将构建好的镜像推到 harbor 上面去
echo '推送镜像到harbor'
#删除本地镜像
docker rmi -f $examimage_path   #推送成功之后,将本地镜像删除
#k8s部署
echo '开始部署'
kubectl delete -f $WORKSPACE/test-web/src/profiles/k8s_prod/.   #将本地的都删除
echo $WORKSPACE
kubectl create -f $WORKSPACE/test-web/src/profiles/k8s_prod/.  #部署最新的



到这里,阿粉想要分享的内容就没有啦~

在项目中你是如何使用 Jenkins 的呢?

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
7月前
|
IDE jenkins Java
告别繁琐配置:Alibaba Cloud Toolkit插件打破Jenkins自动化部署的局限
告别繁琐配置:Alibaba Cloud Toolkit插件打破Jenkins自动化部署的局限
425 0
|
5天前
|
移动开发 jenkins 持续交付
jenkins配置git
通过上述步骤,您可以在 Jenkins 中成功配置 Git,从而实现自动拉取代码并进行构建和部署。这些配置不仅提高了开发效率,还保证了代码的连续集成和交付。确保每一步配置正确,以避免在实际使用中遇到问题。
16 1
|
24天前
|
安全 jenkins 持续交付
如何在 Jenkins 中配置邮件通知?
如何在 Jenkins 中配置邮件通知?
|
2月前
|
Java jenkins 持续交付
Centos7下docker的jenkins下载并配置jdk与maven
通过上述步骤,您将成功在CentOS 7上的Docker容器中部署了Jenkins,并配置好了JDK与Maven,为持续集成和自动化构建打下了坚实基础。
125 1
|
4月前
|
持续交付 jenkins Devops
WPF与DevOps的完美邂逅:从Jenkins配置到自动化部署,全流程解析持续集成与持续交付的最佳实践
【8月更文挑战第31天】WPF与DevOps的结合开启了软件生命周期管理的新篇章。通过Jenkins等CI/CD工具,实现从代码提交到自动构建、测试及部署的全流程自动化。本文详细介绍了如何配置Jenkins来管理WPF项目的构建任务,确保每次代码提交都能触发自动化流程,提升开发效率和代码质量。这一方法不仅简化了开发流程,还加强了团队协作,是WPF开发者拥抱DevOps文化的理想指南。
93 1
|
4月前
|
jenkins 持续交付 网络安全
利用 Jenkins 实现持续集成与持续部署-代码拉取终端的配置
【8月更文挑战第30天】在Jenkins服务器中,git和Gitee是常用的代码拉取终端。Git作为分布式版本控制系统,具备出色的灵活性和可扩展性;而Gitee则在国内网络环境下表现更佳,适合团队协作。Git配置包括安装、设置用户信息及生成SSH密钥等步骤;Gitee配置也类似,需注册账号、创建仓库、配置基本信息并设置远程仓库地址。开发人员提交代码后,可通过Webhook、定时轮询或事件监听等方式触发Jenkins动作,确保持续集成和部署高效运行。正确配置这些触发机制并通过测试验证其有效性至关重要。
70 2
|
4月前
|
jenkins 应用服务中间件 持续交付
如何配置 Nginx 作为 Jenkins 的反向代理并启用 SSL 加密
如何配置 Nginx 作为 Jenkins 的反向代理并启用 SSL 加密
238 8
|
3月前
|
jenkins 持续交付 网络安全
利用 Jenkins 实现持续集成与持续部署-代码拉取终端的配置
安装Git、配置用户信息、生成SSH密钥以及在Gitee上创建项目仓库等。
83 0
|
4月前
|
持续交付 jenkins C#
“WPF与DevOps深度融合:从Jenkins配置到自动化部署全流程解析,助你实现持续集成与持续交付的无缝衔接”
【8月更文挑战第31天】本文详细介绍如何在Windows Presentation Foundation(WPF)项目中应用DevOps实践,实现自动化部署与持续集成。通过具体代码示例和步骤指导,介绍选择Jenkins作为CI/CD工具,结合Git进行源码管理,配置构建任务、触发器、环境、构建步骤、测试及部署等环节,显著提升开发效率和代码质量。
81 0
|
4月前
|
jenkins Linux 持续交付
Jenkins 入门与基本配置
【8月更文第31天】Jenkins 是一款开源的持续集成/持续交付(CI/CD)工具,广泛应用于自动化软件的构建、测试和部署流程。对于想要提高开发效率和软件质量的团队而言,Jenkins 提供了一个易于使用的解决方案。本文将详细介绍 Jenkins 的安装过程、初始设置以及如何创建第一个构建任务,帮助初学者快速上手 Jenkins。
217 0