有一套源码做网站还差什么,国外的app设计网站,平台推广是什么工作,网站开发搭建合同文章目录0.前言环境背景1.操作流程1.1前期准备工作1.1.1环境变量的配置1.2使用流水线的方式进行发版1.2.1新建流水线任务1.2.2流水线操作工具tools步骤stages步骤1:拉取代码编译步骤2:发送文件并启动0.前言 学海无涯#xff0c;旅“途”漫漫#xff0c;“途”中小记#xff…
文章目录0.前言环境背景1.操作流程1.1前期准备工作1.1.1环境变量的配置1.2使用流水线的方式进行发版1.2.1新建流水线任务1.2.2流水线操作工具tools步骤stages步骤1:拉取代码编译步骤2:发送文件并启动0.前言 学海无涯旅“途”漫漫“途”中小记如有错误敬请指出在此拜谢 环境背景
环境版本电脑MAC M2 maxdockerDocker version 20.10.22, build 3a2c30b其他此处使用了Docker Desktop
1.操作流程
根据上一篇文章安装完Jenkins后即可进行Java项目的配置。对于发版Java项目旧版本的Jenkins使用插件进行发版。新版本的Jenkins可以使用流水线的方式进行发版。此处两种方式都进行介绍。
1.1前期准备工作
1.1.1环境变量的配置
进入系统管理配置maven、jdk、ssh参数。 1配置maven、jdk 进入全局工具配置就能看见maven和jdk的配置。此处可以使用你本地的配置也可以让jenkins自己安装。按照提示自己安装就行。当然此处也可以配置maven的setting.xml和其他的插件。此处不做多余赘述如出现问题可以私聊我。 2配置ssh服务属性
进入系统配置页面中搜索ssh能找到Publish over SSH的位置如果未找到回到系统管理才到会找到插件管理。可以在插件管理里面安装Publish over SSH
1.2使用流水线的方式进行发版
1.2.1新建流水线任务
点击新建任务输入名称选择流水线点击确定 1.2.2流水线操作
找到下方流水线便能看到流水线内容输入框这里是最重要的地方。如果脚本框不显示就点击保存后重新进入配置编辑就会显示了 此处粘贴我的流水线脚本全文我在分步进行解释。
pipeline {agent anytools {maven maven3.8.7}stages {stage(服务编译) {steps {git credentialsId: xxx, url: xxxxsh mvn -s /usr/environment/maven/settings-docker.xml clean package -Dmaven.test.skiptrue}}stage(服务传输、启动){steps {# xxx}}}}
工具tools
tools部分是配置maven这块如果使用系统默认的maven的话就可以删了。如果需要特定maven的话就在jenkins配置maven后在此处配置maven的名称。代码如下
tools {maven maven3.8.7
}步骤stages
此处可以分步骤来进行操作比如下属代码
stages {stage(步骤一) {steps {操作1.1}}stage(步骤二){steps {操作2.1}}
}此处我们步骤一是拉取代码步骤二是对服务器进行发版处理。
不要担心流水线语法自己不会jenkins安心的给你准备了流水线语法生成器如图 步骤1:拉取代码编译
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TZqL8bVy-1676189304717)(evernotecid://3560A1D2-2684-4104-9AF8-0F51B73094EC/appyinxiangcom/6351724/ENResource/p615)]
然后将这个数据填入到steps里面内容。例如
stage(步骤一) {steps {git credentialsId: 056884ee-4185-44b9-ac82-833be2526ce5, url: http://x.x.x.x.x/a.git}
}步骤2:发送文件并启动
服务选择sshPublisher 对应参数如下 (1)Source files
你准备传递的文件地址这里的地址指的是当前文件在工作工作空间的相对地址哈。你可以把发送文件的这一步的steps注释掉先只进行编译在工作空间查看位置。 此处最后就可以填写位置路径比如
yudao-server/target/yudao-server.jar(2)Remove prefix
这个呢是要删除的前缀针对于上面来说就是
yudao-server/target(3)Remote directory
这个是待发版的目标地址比如
/opt/yudao-server/api/temp(4)Exec command
待执行的命令根据自己需求来编写shell脚本。此处看需求没什么好讲的。我把我的粘进来
# kill正在启动的服务。此处是根据后面的查询条件来查询服务的进程号从而杀掉。
kill -9 ps -ef | grep yudao-server.jar | grep -v grep | awk {print $2}
# 打开文件夹
cd /opt/test/yudao-server-api
# 将之前的服务增加时间后缀做备份
mv yudao-server.jar yudao-server.jar-$(date %Y%m%d%H%M%S)
# 把之前上传的服务从临时文件夹移到工作空间文件夹里面
mv ./temp/yudao-server.jar ./
# 启动
nohup java -jar -Xms128m -Xmx128m /opt/test/yudao-server-api/yudao-server.jar --spring.profiles.activeprod /dev/null 21 以上内容填写完后点击生成流水线粘进steps中就行了。