1.访问jenkins页面
http://ip:port/perfix/
2.输入管理员初始密码,创建新账号。
3.安装推荐插件。
首页-“系统管理”-“系统配置”-“插件管理”-“可选插件”
搜索 “publish over ssh”
点击“Download now and install after restart”
按步骤安装以下插件:
1.Publish Over SSH
2.
git、maven、node
“系统管理”-“系统配置”-“全局工具配置” 找到git
Name随便取,“ Path to Git executable ”填写 git安装目录下bin/git绝对路径。
“系统管理”-“系统配置”-“全局工具配置” 找到maven
“新增maven”
Name随便取,“ MAVEN HOME ”填写 maven安装路径根目录。
“系统管理”-“系统配置”-“系统配置” 拉到最下方
“SSH Servers”
注意:这里ip地址如果能用内网尽量用内网,否则传jar包会很慢。
1.描述:填写项目描述即可
2.丢弃旧的构建:顾名思义,用于开启和配置丢弃就的构建记录。
1.先择“Git”
2.Repository URL:填写项目的git地址(http)
3.Credentials:git账户(用于拉取代码)
点击“添加”,在弹窗中做如下配置,点击“添加“即可。
4.Branches to build:指定分支
其他的字段忽略即可。
略
略
点击”增加构建步骤“ 选择“调用顶层Maven目标”
1.Maven版本:选择刚刚我们配置的maven。
2.目标:clean package maven命令
点击“高级”,配置setting文件。(setting文件需要手动上传到jenkins所在服务器,注意修改setting文件中本地仓库地址)
点击“增加构建后步骤” 选择“Send build artifacts over SSH”
1.SSH Server-Name:选择目标服务器(在步骤4中配置)
2.Transfers-Transfer Set-Source files:填写jar包的相对路径,从当前项目工作空间的根目录开始。
3.Transfers-Transfer Set-Remove prefix:去掉路径前缀,例如,我在Source files中填的是target/xxxx.jar但是我不想把target文件夹一块放到目标服务器,那 Remove prefix就写 target
4.Transfers-Transfer Set-Remote directory:远程目标文件夹,也就是你jar包要放到远程服务器的哪个目录下,前面会自动拼接SSH Server中该远程服务器配置的Remote directory。
例如:SSH Server 中 Remote directory配置的是 /home/app
在这里Remote directory中配置的是 /helloworld
那么jar包的放置位置为 /home/app/helloworld
到这里,我们已经将jar包放到了远程服务器的对应目录。
5.Transfers-Transfer Set-Exec command:在这里输入要远程执行的脚本。
cd /home/xxxx/app/agencyCloud/ebiz-auth;
sh restart-jenkins.sh;
restart-jenkins.sh 需要手动上传到jar包的同级目录。
#!/bin/bash
PID=$(ps -ef | grep xxxx-agency-auth | grep -v grep | awk '{ print $2 }')
if [ -z "$PID" ]
then
echo xxxx-agency-auth is already stopped
else
echo kill $PID
kill -9 $PID
fi
source /etc/profile
nohup java -jar xxxx-agency-auth.jar > xxxx-agency-auth.log 2>&1 &
echo "Start $jar success..."
sleep 3
echo $(ps -ef | grep xxxx-agency-auth | grep -v grep | awk '{ print $2 }')
注意: source /etc/profile 这行命令可以先尝试去掉,如果报错再加上T。T
到此,后端服务自动化部署配置完毕
略
略
略
略
略
略
点击“增加构建步骤”选择“执行shell”,在其中填写命令,实现打包。
rm -rf dist
cnpm install
npm run build
tar cvf dist/xxxx-agency-ui.tar dist/*
点击"增加构建后步骤"选择“Send build artifacts over SSH”,将打好的包传输到目标服务器,解压。
Exec command
cd /opt/xxxx/xxxx/xxxx-ui
rm -rf ./dist
tar xf xxxx-agency-ui.tar
rm -rf ./xxxx-agency-ui.tar
注意:此步骤的目的就是将打好的压缩包放到目标服务器的指定目录,然后将压缩包解压放到对应目录。读者可以根据实际情况调整shell命令。