本篇主要针对原先部署的Jenkins自动化部署平台做总结整理。
服务部署前需事先安装好:jdk1.8+、maven3.5+
准备的服务器:192.168.10.101 和 192.168.10.102
我部署的版本是Jenkins2.256(建议使用官方最新版),下载地址https://jenkins.io/ ,下载后获得的是一个war包,我将其部署到192.168.10.101服务器的tomcat中启动,启动的时候需要注意日志中打印的信息,访问平台需要密码登录。
我本地访问地址:http://192.168.10.101/jenkins/login
将刚才访问日志中的密码(如果忘记了也可以在服务器shell查询:cat /root/.jenkins/secrets/initialAdminPassword)拷贝粘贴,点击继续
进入用户自定义插件界面,建议选择安装官方推荐插件,因为安装后自己也得安装:
接下来是进入插件安装进度界面(时间比较漫长,可以去泡杯咖啡慢慢等待下):
安装过程中可能存在部分插件安装失败,不要慌,没事的,后面需要的时候再临时安装也可以的。
等待一段时间之后,插件安装结束后,配置用户名密码:
自定义用户名和密码,往后登录平台使用的。
插件安装和配置
我们先配置下插件源(安装插件很慢,修改下数据源),点击进入主界面->插件管理-高级
把地址改为:https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/current/update-center.json
我英文差,那么我就需要将平台汉化下了,英文好的忽略哈:
点击进入主界面->插件管理,搜索:Localization: Chinese (Simplified),选中后点击直接安装
等待安装完成。
我们需要通过SSH远程部署,且采用svn拉取代码,以及项目采用maven构建,那么相关的插件也是需要安装的,
系统管理 > 插件管理 > 可选插件,搜索:
Maven Integration plugin
publish over SSH
SSH plugin
Subversion
点击直接安装,等待安装完成。
配置全局变量
系统管理 > 全局工具配置
配置maven
配置JDK
配置系统配置
系统管理 > 系统配置
找到Publish over SSH,配置远程部署服务器信息,passphrase和key是二选一,我使用的是passphrase,输入服务器密码:
部署项目
首页点击新建:输入项目名称
勾选丢弃旧的构建,选择是否备份被替换的旧包
源码管理,选择 SVN,配置 SVN 相关信息,点击 add 可以输入 SVN 的账户和密码
配置构建命令,指定根POM文件:pom.xml,填写构建命令:clean install -Dmaven.test.skip=true -Ptest
配置构建完成后的远程发布信息:
注:Remote directory 是相对于选择的目标服务器配置的根目录路径
media.sh脚本:
#!/bin/sh
#部署的端口
server_port=8083
#部署的访问服务名称
server_name=media
#工程构建后的部署包名称
build_name=MediaManage-1.0-SNAPSHOT.war
server_basepath=/opt/tomcat
tomcat_path=$server_basepath/www/$server_port
project_name=$tomcat_path/$build_name
current_time=$(date "+%Y%m%d%H%M%S")
echo $tomcat_path
echo $project_name
echo $current_time
if [ -f $project_name ] ;then
echo -- 正在部署$project_name
systemctl stop tomcat$server_port
if [ -f $tomcat_path/$server_name.war ] ;then
echo -- 正在备份$server_name.war
mv $tomcat_path/$server_name.war $server_basepath/backup/$server_port/${server_name}_${current_time}.war
fi
mv $project_name $tomcat_path/$server_name.war
systemctl start tomcat$server_port
else
echo $BUILD_ID - 未找到$project_name
fi
注:脚本文件我们需要将windows的格式转为linux格式,做如下操作即可。
编辑->档案格式转换->转换为UNIX格式(此图源于网络,我本地快捷键冲突无法截图)
卸载Jenkins服务:
1、删除/webapps/jenkins下所有文件:rm -rf jenkins
2、删除配置文件:rm -rf /root/.jenkins/
Jenkins时区和时间问题:
右上角,依次点击:用户->设置->用户定义的时区->选择Asia/Shanghai