栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Jenkins发布Java项目

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Jenkins发布Java项目

java程序发布步骤
1.拉取代码并打包
2.备份原程序
3.拷贝新程序到服务器的webapps目录中,停一会修改配置
4.重启tomcat
5.验证

两台主机,一台jenkins,另一台tomcat

//启动两台
[root@jenkins ~]# /usr/local/jenkins/bin/startup.sh
Using CATALINA_base:   /usr/local/jenkins
Using CATALINA_HOME:   /usr/local/jenkins
Using CATALINA_TMPDIR: /usr/local/jenkins/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/jenkins/bin/bootstrap.jar:/usr/local/jenkins/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
Tomcat started.
[root@jenkins ~]# ss -antl
State     Recv-Q    Send-Q              Local Address:Port         Peer Address:Port    Process    
LISTEN    0         128                       0.0.0.0:22                0.0.0.0:*                  
LISTEN    0         1              [::ffff:127.0.0.1]:8005                    *:*                  
LISTEN    0         100                             *:8080                    *:*                  
LISTEN    0         128                          [::]:22                   [::]:*            

手动部署版

//拉取代码需要用到git命令下载git
[root@jenkins ~]# yum -y install git
[root@jenkins ~]# cd /opt/
[root@jenkins opt]# git clone https://gitee.com/forgotten/tomcat-java-demo.git
正克隆到 'tomcat-java-demo'...
remote: Enumerating objects: 558, done.
remote: Counting objects: 100% (558/558), done.
remote: Compressing objects: 100% (316/316), done.
remote: Total 558 (delta 217), reused 558 (delta 217), pack-reused 0
接收对象中: 100% (558/558), 5.08 MiB | 212.00 KiB/s, 完成.
处理 delta 中: 100% (217/217), 完成.
[root@jenkins opt]# ls
tomcat-java-demo
//下载打包工具maven
[root@jenkins tomcat-java-demo]# yum -y install maven
[root@jenkins tomcat-java-demo]# mvn clean package
//target里面是打包好的
[root@jenkins tomcat-java-demo]# ls
db  deploy.yaml  Dockerfile  jenkinsfile  LICENSE  pom.xml  README.md  src  target
[root@jenkins tomcat-java-demo]# ls target/
classes            ly-simple-tomcat-0.0.1-SNAPSHOT      maven-archiver
generated-sources  ly-simple-tomcat-0.0.1-SNAPSHOT.war  maven-status
//名字太长改个名
[root@jenkins tomcat-java-demo]# mv target/ly-simple-tomcat-0.0.1-SNAPSHOT.war target/myapp.war
[root@jenkins tomcat-java-demo]# ls target/
classes            ly-simple-tomcat-0.0.1-SNAPSHOT  maven-status
generated-sources  maven-archiver                   myapp.war
//因为要把包传到server端,所以要做免密登录,在Jenkins生成公钥传给server
[root@jenkins tomcat-java-demo]# ssh-keygen -t rsa
[root@jenkins ~]# ssh-copy-id root@192.168.47.163
[root@jenkins tomcat-java-demo]# scp target/myapp.war root@192.168.47.163:/usr/local/tomcat/webapps
myapp.war                                                        100%   17MB  49.5MB/s   00:00  
//查看  
[root@server tomcat]# pwd
/usr/local/tomcat
[root@server tomcat]# ls webapps/
docs  examples  host-manager  manager  ROOT
[root@server tomcat]# ls webapps/
docs  examples  host-manager  manager  myapp  myapp.war  ROOT


自动版:





//进行第二步备份得像脚本一样,创建一个目录存放备份
//以下是手动备份
[root@server webapps]# mkdir /opt/backup
[root@localhost demo]# ssh root@192.168.47.163 'tar -Jcf /opt/backup/myapp-$(date +%Y%m%d%H%M).tar.xz /usr/local/tomcat/webapps/myapp.war'
pipeline {
    agent any


    stages {
        stage('Build') {
            steps {
                // Get some code from a GitHub repository
                git 'https://gitee.com/forgotten/tomcat-java-demo.git'


                // Run Maven on a Unix agent.
                sh "mvn -Dmaven.test.failure.ignore=true clean package"
                sh  "mv target/ly-simple-tomcat-0.0.1-SNAPSHOT.war target/myapp.war"
                // To run Maven on a Windows agent, use
                // bat "mvn -Dmaven.test.failure.ignore=true clean package"

            }
        }
        stage('publicsh'){
            steps{
            sh "ssh root@192.168.47.163 tar -Jcf /opt/backup/myapp-$(date +%Y%m%d%H%M).tar.xz /usr/local/tomcat/webapps/myapp.war"
            sh "scp target/myapp.war/ root@192.168.47.163:/usr/local/tomcat/webapps/"
            sh "ssh root@192.168.47.163 '/usr/local/tomcat/bin/catalina.sh stop;sleep 3;/usr/local/tomcat/bin/catalina.sh start' " 
            }
        }
    }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/334377.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号