以前在Jenkins上也有一些使用经验了,可是都是使用团队配置好的Jenkins,本身只须要管本身的项目以及执行构建便可,这一次本身尝试了一下配置Jenkins的远程部署Linux服务器以及应用。linux
执行过程以下:web
- Jenkins拉取代码
- 本地构建打包
- 链接远程服务器
- 上传打包应用
- 到相应目录解压应用内容以及重启正在运行的应用。
远程部署过程当中在本地操做远程服务器使用的插件是publish over ssh
在系统管理
中找到插件管理
apache
点击插件管理
segmentfault
搜索publish over ssh
tomcat
笔者这里没有搜索出来是由于已经安装过了 服务器
安装完成后回到刚才的系统管理
的页面,往下拉会看到一个系统设置
,点击进到系统设置
页面。 app
往下拉,会看到SSH Servers
相关的配置 ssh
笔者是使用密码的方式进行ssh服务器,在Passphrase
填写对应的密码便可,还有其余四项内容以下:webapp
Name
是给sshserver自定义一个名称Hostname
是ssh服务器的地址Username
是ssh服务器的用户名Remote Directory
是须要上传文件到服务器的远程目录填写基本信息完成后能够点击Test Configuration
测试下是否链接正常,信息都正确后点击应用Apply
,一个ssh服务器就配置好了,剩下的就是要在项目配置的时候使用已填的ssh服务器进行操做。测试
项目的代码拉取,命名,构建这里都略过,直接看项目远程部署部分的配置。
首先,在构建完成后的行动中选择Send build artifacts over SSH
填写相对应的远程操做
上述图中展现的是笔者将target
目录下的全部war包都打包到远程服务器tomcat
下的webapps/ROOT
目录下,而后解压war包
,睡10S
,执行重启脚本
这里详细讲解下:
Source files
须要打包的文件Remove prefix
须要去除的前缀路径Remote directory
文件上传的远程服务器目录,这里的目录是以前远程服务器设置的Remote directory
目录的相对目录也就是说笔者这里设置的目录实际上等于以前服务器设置的目录/usr/local/apache-tomcat-8.5.37
加上这里设置的目录/webapps/ROOT
,连起来就是/usr/local/apache-tomcat-8.5.37/webapps/ROOT
Exec command
在远程服务器上执行的命令远程部署linux服务器的相关配置到这里就完成了,开始愉快的自动化远程部署之旅吧!
始发于 四颗咖啡豆 发布! 关注公众号->[四颗咖啡豆] 获取最新内容