jenkins发布java项目

架构图:

流程:

 

 新建节点 :

 

节点配置:

 

 点击新建节点图标:

 

显示如下:

 

点击上图agent.jar图标,下载弹出来的下载链接到agent机器:

wget http://192.168.3.114:8080/jnlpJars/agent.jar

安装java:

 

 运行下面命令:

nohup java -jar agent.jar -jnlpUrl http://192.168.3.114:8080/computer/node1/jenkins-agent.jnlp -secret 7365e260a0c6621b9e73c5ad62882a1908d598dccd0ee8c35b31e170aee6ab83 -workDir "/opt/jenkins_home" &>slave.log &

查运行状态tail slave.log:

 

 这时候查看节点已经没有了之前的×图标:

同样操作增加节点node2

 安装pipeline插件后如下图新建一个任务界面就会多了几个流水线的菜单,创建一个叫做java-demo的项目:

 

安装插件:

 

 安装后配置:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

tomcat=/usr/local/tomcat
#备份
cd $tomcat/webapps
mv ROOT.war /data/backup/$(date +'%F-%T')_ROOT.war
#部署新程序并重启tomcat
mv ly-simple-tomcat-0.0.1-SNAPSHOT.war ROOT.war
pid=$(ps -ef|grep tomcat|grep -v grep|awk '{print $2}')
[ -n $pid] && kill -9 $pid
JAVA_HOME=/usr/local/jdk
export JAVA_HOME
/bin/bash /usr/local/tomcat/bin/startup.sh

 

gitlab创建新项目:

 

 上图创建错了地方应该在microservice里面创建项目,所以需要先删除上面的项目,步骤如下:

 

 点击设置:

 

点击高级:

 

 点击删除:

 

 点击删除,并输入demo:

 

 重新创建一个在microservice下面的demo项目:

 

上传java项目zip包到某一个目录:

tomcat-java-demo-master.zip

解压并初始化这个本地目录为一个git仓库:

unzip tomcat-java-demo-master.zip
cd tomcat-java-demo-master
git init
git remote add origin http://192.168.3.115/microservice/demo.git
git add .
git commit -m 'add'
git push origin master
git config --list
git push origin master

查看git已经上传成功:

 配置git地址:

 在web机器116安装maven

 

编译构建:

 

 116上面安装tomcat:

配置116的nginx:

[root@localhost webapps]# cat /etc/nginx/conf.d/default.conf
upstrem java-demo {
server 127.0.0.1:8080;
}
server {
listen 80;
server_name localhost;

access_log /var/log/nginx/host.access.log main;

location / {
root /usr/share/nginx/html;
proxy_pass http://java-demo;
}

}

查看116,已经把文件:

 访问nginx:

 

 

 更新java程序到仓库,自动更新到web页面:

117上的git仓库如下:

[root@localhost tomcat-java-demo-master]# ls
db Dockerfile LICENSE pom.xml README.md src
[root@localhost tomcat-java-demo-master]# pwd
/root/tomcat-java-demo-master

更新该仓库的代码:

sed -i 's/这里有很多美女/这里有很多帅哥/g' src/main/resources/templates/index.ftl 

提交到gitlab:

git add .
git commit -m "帅哥"
git config --global user.name "Your Name"
git config --global user.email you@example.com
git push origin master

因为设置了每分钟自动检测是否有更新,如果有更新jenkins会自动构建:

所以1分钟后测试查看web:

 

 

posted @ 2021-05-20 23:51  jamespeng2020  阅读(206)  评论(0)    收藏  举报