当前位置:   article > 正文

使用jenkins自动发布代码_代码一键发版工具

代码一键发版工具
环境IP地址服务
Centos7192.168.100.203geilab
Centos7192.168.100.204jenkins
Centos7192.168.100.205tomcat

一.搭建与项目拓扑图

1.先使用jenkin创建一个密钥

 

 

 root公钥在gitlab, root私钥在jenkins,这样jenkins就可以直接拉取gitlab 上的代码。全局凭证(不受限制)

2.查看公钥并部署到Gitlab

 

3.创建一个自己的项目  

 

 往下翻

 我在这里报了个错,因为我没有master分支,将master切换成main就可以了

 

 4.开始构建一下项目

查看构建成功的效果:

 5.将项目拉下来了,开始发布验证

新添加一个服务器安装Apache

Centos7192.168.100.205Apache

 5.1,继续进行配置项目

 

 

 

 记得需要免密登录

 但是会报错!!!!!!!!!!!!-------------解决方法

另一种解决方法

 二.jenkins自动安装发布--只要有更新就发布

安装一个可以生成随机码的插件     

需要安装的插件:Gitlab Hook Plugin (之前已经安装过)、Build Authorization
Token Root和 Build Token Trigger

然后随机生成一个

  1. [root@MiWiFi-R4CM-srv bei-da]# openssl rand -hex 12
  2. 86323d5d0f555250581435b0

 

 然后开始配置jenkins触发器

 

 然后保存

开始配置GItlab下的网络钩子

切换root用户进行修改,允许网络钩子访问

 再换回来

然后开始测试:(如果报错请检查安装包)

 效果讲解:

1.修改文档内容,保存之后就会发现,原来的网页自动切换成了自己刚刚修改的

 

 刷新之后

 

三.使用分支进行版本回滚

分支讲解

我们在公司里面一般使用master作为主分支,开发人员使用开发分支,当开发人员开发完代码以后,会合并到 master主分支,进行上线部署服务,我们还可以使用测试分支,当开发人员写完代码以后,可以合并到测试分支,进行测试,测试成功以后,合并到master分支进行生产环境部署,当然为了安全部署,防止线上代码 BUG,我们可以创建回滚分支,当我们部署的新版本的软件出现.问题,可以马上使用回滚分支进行回滚到上一个稳定版。

(创建-删除-切换)分支的命令

创建分支:git branch bb

切换分支:git checkout bb 

创建加切换:git checkout -b Chengzhang

删除本地分支: git branch -d Chengzhang

删除远程分支: git push origin --delete Chengzhang 

1.先创建两个不同分支,文件名称是相同的,但是内容不同

  1. [root@MiWiFi-R4CM-srv bei-da]# git branch master
  2. [root@MiWiFi-R4CM-srv bei-da]# git branch
  3. * main
  4. master

 

 2.现在master相当于版本的更新,而main是原来的版本,但是master文件出现问题,需要进行回滚,所以编写一个脚本

  1. cd /opt
  2. git clone -b master git@192.168.100.203:chengzhang/bei-da.git ####将main文件克隆到opt
  3. cd bei-da
  4. scp ./bei-da.html root@192.168.100.205:/var/www/html/index.html

我觉得有必要讲解一下

相当于我们自己默认有三个分支,一个是主分支,一个是备用分支,一个是测试分支,

正常流程就是:

1.我们将自己的文件扔到测试分支,如果没有问题就开始向主分支部署

2.如果到达了主分支出现问题了,我们就立即将备用分支的数据把主分支覆盖掉,这个时候主分支的数据依然还在,所以我们要撤掉主分支,,,但是我感觉,既然有备用分支了那为什么不直接启用备用分支,而是用备用分支覆盖???

 四.jenkins发布Tomcat项目

1.先创建一个Tomcat项目

 

2.在jenkins 上安装JDK/Maven

https://maven.apache.org/download.cgi

maven:就是将开发与的.Java代码,打包成war包,然后在将打包成的war包,部署到tomcat上,供客户端访问
Project 0bject Model,项目对象模型。通过xml格式保存的pom.xml文件。该文件用于管埋:源代码、配置文件、开发者的信息和角色、问题追踪系统、组织信息、项目授权、项目的url、项目的衣赖关系等等。该文件是由开

 JDK已经安装过了,所以只需要安装Maven

  1. [root@MiWiFi-R4CM-srv ~]# tar xf apache-maven-3.8.1-bin.tar.gz
  2. [root@MiWiFi-R4CM-srv ~]# mv apache-maven-3.8.1 /usr/local/maven

配置环境变量

  1. cat > /etc/profile.d/maven.sh << 'EOF'
  2. export M2_HOME=/usr/local/maven
  3. export PATH=$M2_HOME/bin:$PATH
  4. EOF
  5. source /etc/profile

查看版本基本信息

mvn --version

安装nexus

https://sonatype-download.global.ssl.fastly.net/repository/downloads-prod-group/3/nexus-3.40.1-01-unix.tar.gz

也是正常的解压压缩包,然后放在/usr/local但是会报错只需要1.8的Java

  1. No suitable Java Virtual Machine could be found on your system.
  2. The version of the JVM must be at least 1.8 and at most 1.8.
  3. Please define INSTALL4J_JAVA_HOME to point to a suitable JVM.

可以将1.8的Java放在/usr/local/下,然后在配置文件指定

INSTALL4J_JAVA_HOME_OVERRIDE=/usr/local/bin/java-1

先跳过吧,没讲,因为它可以不装

 

保存

还需要安装插件:

先将文件传入GitLab

  1. [root@MiWiFi-R4CM-srv bei-da]# git add .
  2. [root@MiWiFi-R4CM-srv bei-da]# git commit -m "add java"
  3. [main 6c9ef87] add java
  4. 1 file changed, 0 insertions(+), 0 deletions(-)
  5. create mode 100644 "jenkins\346\265\213\350\257\225java\351\241\271\347\233\256.rar"
  6. [root@MiWiFi-R4CM-srv bei-da]# git push origin main
  7. Counting objects: 4, done.
  8. Compressing objects: 100% (3/3), done.
  9. Writing objects: 100% (3/3), 5.61 KiB | 0 bytes/s, done.
  10. Total 3 (delta 0), reused 0 (delta 0)
  11. To git@192.168.100.203:chengzhang/bei-da.git
  12. c058561..6c9ef87 main -> main

新建一个项目开始验证

 

 然后添加脚本在204

  1. #!/bin/bash
  2. source /etc/profile
  3. scp /var/lib/jenkins/workspace/test/test/test1.war root@192.168.100.205:/usr/local/tomcat/webapps
  4. ssh root@192.168.100.205 "/usr/local/tomcat/bin/shutdown.sh"
  5. sleep 3
  6. ssh root@192.168.100.205 "/usr/local/tomcat/bin/startup.sh"

 tomcat中也要添加权限

  1. [root@apache ~]# chmod a+x /usr/local/Tomcat/bin/shutdown.sh
  2. [root@apache ~]# chmod a+x /usr/local/Tomcat/bin/startup.sh
  3. [root@apache ~]# chmod -R o=rx /usr/local/Tomcat/bin/
  4. [root@apache ~]# chmod -R o=rwx /usr/local/Tomcat/logs/

修改配置文件

  1. vi /usr/local/tomcat/bin/catalina.sh
  2. #!/bin/sh
  3. JAVA_HOME="/usr/local/java"
  4. JRE_HOME="/usr/local/java/jre"

它报了三个错一个是root的错-我将root目录给了777权限 

第二个报错是---我将java按照目录的形式重新整了一个---/usr/local/java

第三:网络问题

然后开始构建

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号