文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

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

2024-12-03 18:22

关注

 本文转载自微信公众号「Java极客技术」,作者鸭血粉丝。转载本文请联系Java极客技术公众号。   

这篇文章就结合阿粉的工作经验,来说说 Jenkins 的那些详细配置,这些配置主要就是当我们让 Jenkins 帮我们部署完成之后,需要执行的脚本

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

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

  1. #!/bin/sh 
  2. tomcat_path=/usr/local/tomcats/tomcat-test        #定义 tomcat 的位置 
  3. project_web=$tomcat_path/test.war      #定义项目打包位置 
  4. if [ -f $project_web ] ;then  
  5.  echo -- stop tomcat 
  6.  #kill tomcat pid 
  7.  pidlist=`ps -ef | grep tomcat-test | grep -v grep | awk '{print $2}'`   #查看是否有进程正在运行 
  8.  if [ "$pidlist" = "" ]        #没有进程在运行,则提示 
  9.   then 
  10.    echo "no tomcat pid alive!" 
  11.  else             #有进程在运行,杀掉 
  12.     echo "tomcat Id list :$pidlist" 
  13.     kill -9 $pidlist 
  14.     echo "KILL $pidlist:" 
  15.     echo "tomcat stop success" 
  16.  fi  
  17.   
  18.     echo -- 正在部署$project_web         #将进程杀掉之后,重新进行部署 
  19.     if [ -f $tomcat_path/webapps/test.war ] ;then   #查看 /webapps 目录下是否有以前的 war 包,如果有,删掉 
  20.         rm -f $tomcat_path/webapps/test.war 
  21.         rm -rf $tomcat_path/webapps/test 
  22.         echo -- 正在删除$project_web 
  23.     fi  
  24.         cp $project_web $tomcat_path/webapps/test.war #将新生成的 war 包复制到 /webapps 目录下 
  25.     # start tomcat 
  26.     echo $tomcat_path 
  27.     #sleep 5 
  28.     export JAVA_HOME=/usr/java/latest 
  29.     #$tomcat_path/bin/startup.sh 
  30.     ${tomcat_path}/bin/startup.sh  
  31. else  
  32. echo $BUILD_ID - 未找到$project_web 
  33. fi 

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

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

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

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

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

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

 

来源:Java极客技术内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯