Jenkins部署项目

一.安装jenkins

1.1进入jenkins官网下载jenkins war包,上传到服务器/usr/local目录。

1.2执行启动jenkins命令,(注意jenkins版本需要的jdk版本)

nohup /usr/local/java11/bin/java -Djava.awt.headless=true -jar /usr/local/jenkins.war --webroot=/jenkins/war --httpPort=8020 &

 1.3 访问Jenkins页面: http://ip:8020

二.安装git拉取项目

2.1 服务器安装git,执行安装命令

yum install git

 2.4 创建jar目录,用于放入jenkins打包的jar,并在该目录下创建启动脚本

mkdir -p /data/jar

编写shart.sh脚本 

cd  /data/jar

vim start.sh

脚本内容 

#jar名称
Tag="summarize-0.0.1-SNAPSHOT.jar"
# 检查进程状态
pid=$(ps -ef | grep -v 'grep' | egrep $Tag| awk '{printf $2 " "}')
if [ "$pid" != "" ]; then      
  echo -n "boot ( pid $pid) is running" 
  echo 
  echo -n $"Shutting down boot: "
  pid=$(ps -ef | grep -v 'grep' | egrep $Tag| awk '{printf $2 " "}')
  if [ "$pid" != "" ]; then
    echo "kill boot process"
    # kill  "$pid"
    kill -9 "$pid"
  fi
else 
   echo "boot is stopped" 
fi
# 启动项目
nohup java -Xmx2g -Xms2g -Xmn2g  -XX:+UseConcMarkSweepGC -XX:CMSFullGCsBeforeCompaction=5 -XX:+UseCMSCompactAtFullCollection -Dappliction=$Tag -jar $Tag  > console.out 2>&1   &
 

 三.Jenkins配置

3.1 全局属性环境变量,添加如下配置,该配置解决执行start.sh脚本不生效问题 

 

键:LANG

值:zh_CN.UTF-8 

键:BUILD_ID

值:TEST 

3.2 配置jenkins任务,选择自由风格

3.3 源码管理 ,填写项目地址,票据,分支信息

3.4 构建触发器,如果选择Gitee webhook 触发构建,需要在 Gitee webhook 中填写 提示的地址,并生成webhook密码,将密码填到gitee的webhook配置中。

3.5 配置Build Steps,选择执行shell

 shell脚本内容,maven需要提前上传到/usr/local目录,配置settings.xml文件。

/usr/local/maven/bin/mvn clean install -Dmaven.test.skip=true

#移动打包的jar到目录
mv target/{项目打包的jar名}  /data/jar/

#进入目录
cd /data/jar
chmod 777 start.sh

#启动脚本
sh start.sh

保存之后构建即可自动化部署服务了。 

四.多台服务器部署服务

在生产环境中,服务部署需要同时部署到多台服务器并启动,那么该如何操作呢?其实只需要改下jenkins配置脚本内容,添加rsync命令同步文件夹到其它服务器,ssh远程连接执行脚本即可。(注:服务器之间需要提前配置免密登录

source /etc/profile

#maven打包
/usr/local/maven/bin/mvn clean install -Dmaven.test.skip=true

#移动打包的jar到目录
mv target/summarize-0.0.1-SNAPSHOT.jar /data/jar

#同步目录到远程服务器

rsync -avr /data/jar root@47.109.145.59:/data/jar

#远程连接,进入目录启动脚本

ssh root@47.109.145.59 "cd /data/jar; sh start.sh; "

#进入本地目录
cd /data/jar
chmod 777 start.sh

#启动脚本
sh start.sh

五.使用docker启动

#maven打包
/usr/local/maven/bin/mvn clean install -Dmaven.test.skip=true

#移动打包的jar到目录
mv target/summarize-0.0.1-SNAPSHOT.jar /data/docker

#进入docker目录,里面有dockerfile
cd /data/docker
chmod 777 dockerfile
chmod 777 cleanDocker.sh

#执行停止并删除容器镜像
sh cleanDocker.sh
#构建镜像
docker build -t myapp .
#启动镜像
docker run -p  8080:8080 -d --name myapp myapp 

dockerfile文件

# 基础镜像
FROM  openjdk:8-jre
VOLUME /usr/app/
# 创建目录
RUN mkdir -p /usr/app/
# 设置工作目录
WORKDIR /usr/app
# 将JAR文件复制到容器中,注:jar包位置是dockerfile文件的相对路径
COPY summarize-0.0.1-SNAPSHOT.jar /usr/app/summarize-0.0.1-SNAPSHOT.jar
# 启动命令
ENTRYPOINT ["java","-jar","summarize-0.0.1-SNAPSHOT.jar"]

 停止清理镜像脚本cleanDocker.sh

docker stop myapp
docker rm myapp
docker rmi myapp

  • 18
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Jenkins是一个用于持续集成和持续交付的开源工具。通过Jenkins可以自动化地构建、测试和部署项目。在使用Jenkins部署项目时,可以按照以下步骤进行操作: 1. 首先,确保已经安装并配置好Jenkins服务器。可以按照文献中的步骤进行安装和配置。 2. 接下来,需要在Jenkins中创建一个新的项目。可以选择自由风格项目或者流水线项目,根据实际需求进行选择。 3. 在项目配置中,需要设置源码管理,即指定项目的代码仓库地址。 4. 接着,需要配置构建触发器。可以选择定时触发、代码变更触发等方式来触发构建过程。 5. 然后,需要配置构建步骤。根据项目的具体需求,可以选择不同的构建步骤,例如编译、测试、打包等。 6. 如果需要将构建的结果进行部署,可以配置部署步骤。可以选择将构建产物部署到服务器、云平台等。 7. 最后,保存配置并运行项目Jenkins会根据配置的触发器来自动触发构建过程,并根据配置的构建步骤执行相应的操作。 以上是使用Jenkins部署项目的一般步骤。具体的操作和配置方式可以根据文献和文献中的介绍进行操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [jenkins部署项目](https://blog.csdn.net/qq_47945825/article/details/120919948)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [使用jenkins进行项目部署](https://blog.csdn.net/m0_37572422/article/details/114284418)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

今朝花落悲颜色

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值