云迈博客

您现在的位置是:首页 > 后端开发 > 正文

后端开发

Jenkins 自动部署保姆级教程(多图)

caoxu2021-11-19后端开发935
安装建议使用docker,简单方便。配置&插件安装maven在系统管理》全局工具配置页面:安装SSH在系统管理》插件管理页面下载PublishOverSSH:![]

安装

建议使用docker,简单方便。

配置&插件

安装 maven

在 系统管理》全局工具配置页面:

安装SSH

在 系统管理》插件管理页面下载 Publish Over SSH:

配置JDK

在全局工具配置页面,新增JDK。我是使用Docker安装的,可以使用默认的JDK。在Docker容器里使用echo $JAVA_HOME 可以得出路径,将路径填入保存即可。
(需要注意jenkins版本问题,有些版本的是11版本的jdk,项目jdk版本与jenkinsjdk版本需要保持高度统一。否则会导致构建不成功)
(有些jenkins版本查使用echo $JAVA_HOME找不到jdk路径,需要先使用whereis寻找路径)

配置maven

全局工具配置页面,新增maven。
(maven可以使用apache默认下载,之后需要设置maven settings文件路径,可以使用默认的路径,建议配置阿里云镜像)

添加【配置】信息

在系统管理》配置界面,添加 SSH remote hosts、Publish over SSH 信息。
(有时候项目配置好之后构建不成功,可以延长超时时间,这个与服务器本身有关系)

SSH remote hosts

SSH remote hosts 用于配置目标服务器信息:

Publish over SSH

Publish over SSH 用于将文件上传到目标服务器上:

实例开始

新建任务

  • 推荐任务名称使用英文名称,因为会在对应的 workspace 目录下生成以该任务名称命名的文件夹。

配置源码

构建

构建后上传目标服务器

再来个配置PHP项目的例子:

立即构建

常见问题

Q: ERROR: Exception when publishing, exception message [Exec exit status not zero. Status [127]],项目编译没问题,并且成功上传目标服务器,但是程序并没有执行!

A: 原因是shell脚本中没有载入环境变量,如下图所示

Q: 如何安装 jdk1.8?

A: 最新的jenkins安装的都是 jdk 11,如果想要安装多版本的话只需要在全局工具配置中安装jdk并选择自动安装。(注意,这里有坑!勾选自动安装后是何时安装的呢?答案:jdk的安装是在项目构建的时候根据项目指定的jdk版本进行安装,也就是前面指定的jdk版本的自动安装只是占个位,在真正开始构建项目时才开始下载安装。)

Q:报错为ERROR: Maven JVM terminated unexpectedly with exit code 137

A: 进入WEB端jenkins,点击系统管理,找到Maven项目配置,修改全局MAVEN_OPTS
即可 -Xms256m -Xmx512m -XX:MaxPermSize=128m -XX:ReservedCodeCacheSize=64m,修改完毕不要忘记重启jenkins!!!

总结

jenkins 功能还是非常多的,坑也比较多,有更多的惊喜等待我们去探索。

发表评论

评论列表

  • 这篇文章还没有收到评论,赶紧来抢沙发吧~