Jenkins持续集成
程序员文章站
2024-02-03 19:07:34
...
Jenkins基础
- 下插件
- 配置管理权限账号
- 新建节点(ssh连接测试服务器)
- Luanch Agent尝试连接
- 运行验证任务
创建一个新任务 ->
restrict where this project can be run ->
Label Expression:TestEnv ->
构建 (Execute shell, Command:if config) ->
立即构建 ->
进入任务Console Output (控制台输出日志)
应用服务器部署准备
- Linux操作系统准备
确定ip地址:if config (inet)
确定登录用户名,密码
确定可以远程ssh连接,检查命令:netstat -anp | grep :22
启动ssh命令:service sshd start
确定防火墙处于关闭状态:service iptables stop
检查命令:service iptables status (Stopped ipv4 firewall with iptables) - 安装Java环境:yum install java
验证是否安装成功:java -version - 安装并配置git: yum install git
验证是否安装成功:git version
初始化设置生成授权证书:git config --global user.name “moxiaoruo”
git config --global user.email “aaa@qq.com”
ssh-****** -t sta -C “aaa@qq.com”
cd ~/.ssh/
ls
4.gitlab上配置**(LinuxEnv)
vim id_sta.pub
ssh aaa@qq.com - 安装并配置maven: apache-maven-3.5.3-bin.zip
cd /root
wget 下载包链接
解压安装maven: unzip apache-maven-3.5.3-bin.zip
ls -l - 配置maven系统参数
cd apache-maven-3.5.3/
vim /etc/profile
输入i进入编辑模式,末尾添加:
export MAVEN_HOME=/root/apche-maven-3.5.3
export PATH=$MAVEN_HOME/bin:$PATH(ESC:wq)
重新加载系统配置:. /etc/profile
mvn -version - 下载tomcat9 Binary Distributions -> Core:zip 复制链接
wget 下载链接 - 解压缩安装Tomcat
unzip apache-tomcat-9.0.8.zip - 配置Tomcat
cd apche-tomacat-9.0.8
tomcat目录下所有文件可执行权限:chmod a+x -R *
vim conf/server.xml
修改port为8090 - 启动验证Tomcat
bin/startup.sh
ps -ef | grep tomcat
验证tomcat启动:ip地址:8090 - 新建节点
将Linux注册到Jenkins上:新建节点TestEnv,选中Perment agent -> 描述,这是一台测试环境的Linux主机 - 配置IP
远程工作目录:/root/.jenkins
启动方法:SSH
主机:ip地址
添加用户root ,密码 - 启动节点验证Linux服务器成功注册到Jenkins上
Lanuch Agent - 运行验证任务
创建一个新任务 -> TestTask -> Restrict where this project can run ->
Label Expression:TestEnv ->
构建 (Execute shell, Command:if config) ->
立即构建 ->
进入任务Console Output (控制台输出日志)
部署应用介绍与前期准备
- 部署应用
- Github上Fork部署应用程序(获得代码修改权限)
- 打开fork的部署应用,单击clone or download按钮复制克隆连接(SSH)
- 将gitlub源代码clone到本地
git clone + 项目链接(git clone aaa@qq.com:Tester0101/order.git) - 用Intellij idea打开克隆好的项目
- Maven构建项目
Maven Project -> clean command install -> run maven -> - 创建数据库表,导入源代码中的.sql文件
management -> Data import/restore -> import from self-contained file -> start import - 执行sql检查结果
SELECT * FROM ‘order’.menus; - 修改应用配置数据库参数然后本机运行
更新应用中的MYSQL服务器host地址、端口、用户名、密码
resource -> applicationContext.xml -> 数据源:DB连接 -> 数据库ip地址替换YourDBHost,端口号替换YourDBPort -> YourDBUsername和Password替换 - 验证参数是否配置正确
maven porject -> order -> plugins -> tomcat7:run双击 -> 浏览器运行 localhost:8071运行程序 - git上commit更新代码
order目录下git status(modified) -> git add 修改文件路径
git commit -m “update mysql configuration”
git push
Jenkins自动化部署任务开发
- deploy.sh 自动化部署代码
#!/usr/bin/env bash
#编译+部署order站点
#需要配置如下参数
# 项目路径, 在Execute Shell中配置项目路径, pwd 就可以获得该项目路径
# export PROJ_PATH=这个jenkins任务在部署机器上的路径
# 输入你的环境上tomcat的全路径
# export TOMCAT_APP_PATH=tomcat在部署机器上的路径
### base 函数
killTomcat()
{
pid=`ps -ef|grep tomcat|grep java|awk '{print $2}'`
echo "tomcat Id list :$pid"
if [ "$pid" = "" ]
then
echo "no tomcat pid alive"
else
kill -9 $pid
fi
}
cd $PROJ_PATH/order
mvn clean install
# 停tomcat
killTomcat
# 删除原有工程
rm -rf $TOMCAT_APP_PATH/webapps/ROOT
rm -f $TOMCAT_APP_PATH/webapps/ROOT.war
rm -f $TOMCAT_APP_PATH/webapps/order.war
# 复制新的工程
cp $PROJ_PATH/order/target/order.war $TOMCAT_APP_PATH/webapps/
cd $TOMCAT_APP_PATH/webapps/
mv order.war ROOT.war
# 启动Tomcat
cd $TOMCAT_APP_PATH/
sh bin/startup.sh
- 创建Jenkins自动化部署任务
创建Jenkins任务
填写Server信息
配置git参数
填写构建语句,实际部署测试环境
新建任务 -> DeployOrder -> 构建*风格的软件项目 -> 描述:这个任务负责部署Order工程到Tomcat中,并启动Tomcat -> 勾选限制项目的运行节点 :TestEnv(Linux测试环境) -> 源码管理git -> Respository URL添加源码ssh访问路径 -> additional Behaviours:check out to a sub-directory:order(从git下载到当前目录的子目录order中) -> 构建:Execute shell
BUILD_ID=DONTKILLME
. /etc/profile
#配置运行参数
export PROJ_PATH=`pwd`
export TOMCAT_APP_PATH=/root/apache-tomcat-9.0.8
sh $PROJ_PATH/order/deploy.sh
保存 -> 立即构建 -> 浏览器访问对应server的主页(192.168.100.133:8090)