【在Linux中安装Jenkins服务,实现项目自动化部署】

有时候因为一些问题频繁的打包并上传到服务器,然后启动服务感觉很浪费时间,所以就弄了一下jenkins,解决一下这种问题。

使用Jenkins完成自动化部署,主要分为一下几步:

  1. 安装jdk
    #进入usr目录,创建java文件夹
    cd /usr
    mkdir java
    cd java
    
    #使用yum命令安装wget
    yum -y install wget
    
    #下载jdk压缩包
    wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u141-b15/336fa29ff2bb4ef291e347e091f7f4a7/jdk-8u141-linux-x64.tar.gz"
    
    #解压并修改文件名
    tar -xzvf  jdk-8u141-linux-x64.tar.gz
    mv jdk-8u141-linux-x64 jdk-8u141
    
    #配置jdk环境变量
    vim /etc/profile
    #输入i,进入编辑模式,加入以下配置,记得去掉前面的#号,然后保存
    # JAVA_HOME=/usr/java/jdk-8u141
    # JRE_HOME=$JAVA_HOME/jre
    # CLASSPATH=$JAVA_HOME/lib
    # PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
    # export JAVA_HOME JRE_HOME CLASSPATH PATH
    
    #执行命令,使配置生效
    source /etc/profile
    
    #查看jdk环境变量是否配置成功
    java -version
    #如果出现jdk版本相关信息,则表示配置成功
  2. 安装tomcat
    #使用war包方式安装Jenkins服务,就是将Jenkins的war发布到tomcat中
    #进入根目录,创建tomcat文件夹
    cd /usr
    mkdir tomcat
    
    #进入tomcat文件夹
    cd tomcat
    
    #使用wget命令进行下载tomcat的tar.gz压缩包,我使用的是tomcat8如需使用其他版本去官网下载即可
    wget https://downloads.apache.org/tomcat/tomcat-8/v8.5.53/bin/apache-tomcat-8.5.53.tar.gz
    
    #解压并修改文件名
    tar -xzvf  apache-tomcat-8.5.53.tar.gz
    mv apache-tomcat-8.5.53 tomcat8
    
    #如果不需要修改端口,就可以直接启动tomcat8
    sh /usr/tomcat/tomcat8/bin/startup.sh
    
    #设置tomcat开机自启,如果没有安装vim命令,可以使用vi
    vim /etc/rc.local
    
    #在文件最末尾加上,记得去掉#号,然后保存
    # sh /usr/tomcat/tomcat8/bin/startup.sh
    
    #给rc.local文件添加执行权限
    chmod +x rc.local
  3. 安装Jenkins,Jenkins的安装可以使用war包发布的方式或者rpm包安装(下面描述的是war包方式):
    #创建Jenkins的默认生成目录,不创建此目录,当Jenkins启动时默认生成在当前用户的根目录
    cd /usr
    mkdir .jenkins
    
    #上传项目所需的jar包到服务器的maven仓库,建议直接上传本地压缩的maven仓库
    # 安装解压命令:yum install unzip
    # 解压命令:unzip apache-maven-3.5.4.zip
    #服务器安装maven,上传本地jar包仓库也可以
    # yum install maven
    
    #修改settings.xml文件的本地仓库位置为:<localRepository>/usr/apache-maven-3.5.4/repo</localRepository>
    vim /usr/apache-maven-3.5.4/conf/settings.xml
    
    #配置Jenkins的环境变量以及maven环境变量
    vim /etc/profile
    #在文件最后一行加上下面参数,注意要去掉#号
    # export JENKINS_HOME=/usr/.jenkins
    # export M2_HOME=/usr/apache-maven-3.5.4
    # export PATH=$PATH:$M2_HOME/bin
    #重启文件配置,使其生效
    source /etc/profile
    
    #关闭tomcat
    sh /usr/tomcat/tomcat8/bin/shutdown.sh
    
    #进入tomcat的webapp所在目录
    cd /usr/tomcat/tomcat8/webapp
    
    #下载Jenkins的war包
    wget  http://mirrors.jenkins-ci.org/war/latest/jenkins.war
    
    #启动tomcat
    sh /usr/tomcat/tomcat8/bin/startup.sh
    
    #安装一下git(也可以不安装,在jenkins里面自动安装一个也行)
    yum -y install git
    #安装完可以使用下面的命令查看是否安装成功(与maven不同的是它前面是2个-)
    git --version
    然后打开浏览器输入:http://ip:8080/jenkins,出现下图(记得将ip替换成自己的实际ip),表示Jenkins服务启动成功
  4. 安装实现Jenkins自动部署相关插件
    1. 解锁Jenkins后会推荐安装插件,默认安装jenkins推荐的即可。
    2. 创建一个登陆用户,不创建就默认使用admin,密码就是上面文件中的密码,如下图
    3. 创建完成后直接点下一步...,进入jenkins主界面
    4. 查看一下是否有安装Git和Maven Integration插件,如果没有先安装一下,安装完需要重启jenkins:http://192.168.1.131:8080/jenkins/restart
  5. 配置Jenkins全局相关参数
  6. 创建一个maven工程
    1. 使用jenkins创建第一个项目
    2. 进入创建的maven项目并配置相关数据
    3. 配置自动打包相关参数
    4. 配置完后应用并保存就可以实现自动打包了
  7. 上面只是利用jenkins实现自动拉取代码进行打包的功能,但是部署项目还需要自己进入服务器手动进行,现在记录一下目前使用的自动部署实现方式
    1. 编写sheel脚本
      #测试项目启动脚本
      
      #创建目录,-p表示创建多级目录
      mkdir /usr/test -p
      cd /test
      touch nohup.out
      touch api.out
      touch service.out
      touch restartTest.sh
      
      #设置restartTest.sh为可读,写,执行文件并且所有用户都可以执行
      chmod 777 restartTest.sh
      
      #输入一下启动脚本,千万不要照搬,需要修改成自己的,这只是借鉴
      <!--
      echo "关闭注册中心"
      pid=`ps -ef | grep test-eureka| grep -v grep | awk '{print $2}'`
      if [ -n "$pid" ]
      then
         echo "kill -9 的pid:" $pid
         kill -9 $pid
      fi
      
      echo "Stopping test-service"
      pid=`ps -ef | grep test-service| grep -v grep | awk '{print $2}'`
      if [ -n "$pid" ]
      then
         echo "kill -9 的pid:" $pid
         kill -9 $pid
      fi
      
      echo "Stopping test-api"
      pid=`ps -ef | grep test-api| grep -v grep | awk '{print $2}'`
      if [ -n "$pid" ]
      then
         echo "kill -9 的pid:" $pid
         kill -9 $pid
      fi
      
      echo "关闭所有进程"
      echo "开始重启测试项目!"
      
      nohup /usr/jdk/jdk1.8.0_141/java -jar /usr/apache-maven-3.5.4/repo/com/yfy/test-eureka/0.0.1-SNAPSHOT/test-eureka-0.0.1-SNAPSHOT.jar >/usr/test/nohup.out 2>&1 &
      sleep 10
      nohup /usr/jdk/jdk1.8.0_141/java -jar /usr/apache-maven-3.5.4/repo/com/test/test-service/0.0.1-SNAPSHOT/test-service-0.0.1-SNAPSHOT.jar >/usr/test/service.out 2>&1 &
      nohup /usr/jdk/jdk1.8.0_141/java -jar /usr/apache-maven-3.5.4/repo/com/yfy/test-api/0.0.1-SNAPSHOT/test-api-0.0.1-SNAPSHOT.jar >/usr/test/api.out 2>&1 &
      echo "启动完成!"
      #最后记得保存
      -->
      
      #为了体现出jenkins自动执行脚本的效果,我这里就在脚本里写一句输出语句
      echo "Hello World!!!"
      
      

    2. 配置项目实现自动化部署
    3. 测试并运行

到此使用jenkins完成项目自动打包和发布的配置与测试就到此完成了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值