Jenkins自动构建远程部署服务maven+svn+tomcat

本篇主要针对原先部署的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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值