T O P

[资源分享]     Jenkins+Maven+Gitlab+Tomcat 自动化构建打包、部署

  • By - 楼主

  • 2022-11-22 16:11:35
  • Jenkins+Maven+Gitlab+Tomcat 自动化构建打包、部署笔记

    版本控制概念

    • 记录开发文件的时间机器

      • 更好的开发,挽回代码错误带来的损失
    • 分类

      • 本地版本控制系统
        • image-20221116144859326
      • 集中化的版本控制系统 CVS、Subversion(SVN)
        • image-20221116144920126
      • 分布式版本控制系统GIT
        • image-20221116144935992
    • 产品

      • github

      • image-20221116145021836

      • git 纯命令行的软件 服务器&客户端

      • gitlab 私有的git web服务器

    gitlab部署

    gitlab-LOGO

    image-20221116145248200

    • system

      • 支持的类UNIX系统

        • ​ Ubuntu
        • ​ Debian
        • ​ CentOS
        • ​ Red Hat Enterprise Linux (please use the CentOS packages and instructions)
        • ​ Scientific Linux (please use the CentOS packages and instructions)
        • ​ Oracle Linux (please use the CentOS packages and instructions)
      • 不支持的类UNIX系统

        • ​ OS X
        • ​ Arch Linux
        • ​ Fedora
        • ​ Gentoo
        • ​ FreeBSD

    官网链接

    环境准备

    服务器一台:CentOS7

    内存:8G

    CPU:2核以上

    主要是关防火墙和selinux

    Install and configure the necessary dependencies

    sudo yum install curl policycoreutils openssh-server openssh-clients    //安装和配置必要的依赖关系
    sudo yum install postfix      //安装邮件程序
    sudo systemctl enable postfix
    sudo systemctl start postfix
    sudo  systemctl stop firewalld     //防火墙关上!
    sudo systemctl disable firewalld
    

    Add the GitLab package server and install the package

    由于官网安装比较慢,这里直接上传安装包gitlab-ce-9.1.0-ce.0.el7.x86_64.rpm

    链接: https://pan.baidu.com/s/1N0GqYnd5UHXQo0_V9O1YPQ?pwd=gjmb 提取码: gjmb

    //离线安装
    yum -y install gitlab-ce-9.1.0-ce.0.el7.x86_64.rpma
    //官网安装
    curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash 
    

    Configure and start GitLab

    sudo gitlab-ctl reconfigure   //自动配置文件权限,安装数据库….安装的时间会很长!!!
    

    Browse to the hostname and login

    gitlab服务器的地址:http://server_IP Gitlab占用80端口,访问时直接访问IP就可以(第一次会让你确认root账户登录的密码)

    登陆图示

    image-20221116150835260

    欢迎界面

    创建8位新密码 然后使用root登录即可

    image-20221116150927338

    创建项目

    image-20221116151149939

    推送密钥

    粘贴这个地址,用于下载项目

    image-20221116151312881

    查看秘钥

    ➜ ssh-keygen
    Generating public/private rsa key pair.
    Enter file in which to save the key (/Users/echo/.ssh/id_rsa):
    Enter passphrase (empty for no passphrase):
    Enter same passphrase again:
    Your identification has been saved in /Users/echo/.ssh/id_rsa
    Your public key has been saved in /Users/echo/.ssh/id_rsa.pub
    The key fingerprint is:
    SHA256:eL/4ra3L1AQpYKy3zQWC+6bec0+vgfUqlqWXiG43Ecg echo@bogon
    The key's randomart image is:
    +---[RSA 3072]----+
    |     oo          |
    |    ..o..  .     |
    |     + o..o      |
    |    o E.....     |
    |     o.+So. .    |
    |      +.++.+     |
    |     o ..*=.o    |
    |    ..+ X=oB     |
    |   ..oo=.*@=+    |
    +----[SHA256]-----+
    
    ➜ cat ~/.ssh/id_rsa.pub
    ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDDh1o1h80mo9ulEP6TvmuCDez5hSXPohewY8gm6x77iF/2gXg6qxtDWxNDSAEwbIrW8kxfWkVpPJBFmTYjjCyI8lbWLf4wt926KLtAt1irBnS3IBt2AZDl1MRllEbl8OvXELnUQo7fnKxfzoYbBE8+fg3fTXd+sxQeMs53U3wcZiz35Sbobd2bMK2HcO7kTsQX8M+pYIzopeMdoeitr0rwAIUWHuxU5jZjfpRX5Qhu+QVM4KGj/bs0eIaY9inho3UQSkZC10vfNFboFnuW3qlUm2ekkPdONokIjiEQOqSbUg6y9eHg9cJaKRfdr+UZ1YuR1MGPtmyuQJ6fRMemaMklc3Zpl0ZF+RrU0mCjXSPuv6ud9aFmuCezoB+g3VEg8mh4lrWCPdSoet9WWP5ns9KAOfK1RRKo4ncrbvrfTUA2iBso+EgP14lZC+0Ay5tYcw/QUe48rezvEOOuNz9jzl3wTAbXj3qP6gO1Z6WW73Ai8GmPxOioQV6pxfk4HLq1fvc= echo@bogon
    

    上传密钥

    image-20221116151725169

    查看密钥

    image-20221116151753508

    链接地址

    用于命令行,或客户端程序进行下载使用

    image-20221116151840013

    使用gitlab

    图形操作

    上传文件到gitlab

    image-20221116152624079

    image-20221116152745595

    image-20221116152805624

    下载文件到gitlab客户端

    image-20221116152856051

    image-20221116152915123

    命令行操作

    克隆服务器的文件

    [root@web1 ~] yum -y install git 
    [root@web1 ~] git --version
    git version 1.8.3.1
    [root@web1 ~] git config --global user.name "root"
    [root@web1 ~] git config --global user.email git@qq.com
    [root@web1 ~] git clone git@192.168.23.26:root/project1.git   //把项目克隆到当前服务器上,192.168.23.26 gitlab主机地址
    

    上传文件

    [root@web1 ~] cd project1/     //进入工作目录
    [root@web1 project1] echo 123456 > 2.sh     //新建文件
    [root@bogon my.test] git init     //初始化
    [root@web1 project1] git remote add origin git@192.168.23.26:root/project1.git   //配置远程服务器地址 如果远程服务器配置报错,因为之前已经配置过其他远程服务器。可以用命令清除掉  git remote rm origin 
    [root@web1 project1] git add .     //建立当前文件夹下所有的文件,为准备上传的文件
    [root@web1 project1] git commit -m "add client.txt"    //提交上传说明
    [root@web1 project1] git push -u origin master          //上传
    

    image-20221116170933722

    Jenkins理解

    简介

    • CI/CD

      • 持续集成/持续发布 开发(git) -->git主库-->jenkins(git+jdk+tomcat+maven打包+测试)-->发布到tomcat服务器
    • jenkins

      • Jenkins是帮我们将代码进行统一的编译打包、还可以放到tomcat容器中进行发布。
        意思是我们通过配置,将以前:编译、打包、上传、部署到Tomcat中的过程交由Jenkins,Jenkins通过给定的代码地址URL,将代码拉取到其“宿主服务器”(Jenkins的安装位置),进行编译、打包和发布到web容器中

    jenkins概述

    是一个开源的、提供友好操作界面的持续集成(CI)工具,起源于Hudson(Hudson是商用的),主要用于持续、自动的构建/测试软件项目、监控一些定时执行的任务。Jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行,也可独立运行。
    

    jenkins通常与版本管理工具(SCM)、构建工具结合使用;常用的版本控制工具有SVN、GIT。jenkins构建工具有Maven、Ant、Gradle。

    • CI

      • 英文全称:Continuous Integration
        中文全称:持续集成工具
        持续集成是一种软件开发实践。在持续集成中,团队成员频繁集成他们的工作成果,一般每人每天至少集成一次,也可以多次。每次集成会经过自动构建(包括自动测试)的检验,以尽快发现集成错误。
    • SCM

      • 英文全称:Source  Control Management (Software Version Control)
        中文全称:源码控制管理软件 版本控制
        

    jenkins目标

    是监控软件开发流程 快速显示问题 提高开发效率 过程控制

    jenkins特性

    • 易于安装

      • 不需要安装、不需要数据库,只需通过java -jar jenkins.war或部署到一个servlet容器中
    • 易于配置

      • 所有的配置都可能通过jenkins提供的web界面完成,当然如果你喜欢,也可以通过手动修改xml文件进行配置
    • 测试报告

      • 生成JUnit或TestNG的测试报告.集成RSS/E-mail通过RSS发布构建结果或当构建完成时通过e-mail通知
    • 文件识别

      • jenkins能跟踪每次构建生成哪些jar包以及使用哪个版本的jar包
    • 分布式构建

      • 支持Jenkins能够让多台计算机一起构建/测试
    • 插件支持

      • jenkins可以通过第三方插件扩展,也可以根据团队需要开发插件
    • 任务(Job)和构建(build)

      • 任务:(Job)是Jenkins的一个执行计划,是一系列操作的集合
        构建:是Jenkins的任务的一次运行
    • 工作流程图

      • image-20221121112653612
      • 开发者检入代码到源代码仓库。
      1. CI系统会为每一个项目创建了一个单独的工作区。当预设或请求一次新的构建时,它将把源代码仓库的源码存放到对应的工作区。
      2. CI系统会在对应的工作区内执行构建过程。
      3. (配置如果存在)构建完成后,CI系统会在一个新的构件中执行定义的一套测试。完成后触发通知(Email,RSS等等)给相关的当事人。
      4. (配置如果存在)如果构建成功,这个构件会被打包并转移到一个部署目标(如应用服务器)或存储为软件仓库中的一个新版本。软件仓库可以是CI系统的一部分,也可以是一个外部的仓库,诸如一个文件服务器或者像Java.net、 SourceForge之类的网站。
      5. CI系统通常会根据请求发起相应的操作,诸如即时构建、生成报告,或者检索一些构建好的构件。
        Jenkins就是这么一个CI系统。之前叫做Hudson。

    Jenkins部署

    环境

    Github https://github.com/
    192.168.23.27 部署Jenkins
    192.168.23.28 Tomcat网站服务器

    部署Git

    192.168.23.27执行

    #安装依赖包
    [root@tomcat ~] yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker -y
    #git官网下载最新版本GIT,如果网速慢可下载提供的安装包 链接: https://pan.baidu.com/s/1kRYq6hVa1K1C0dHMK1l7Ww?pwd=ijxw 提取码: ijxw 
    wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.9.5.tar.gz
    //安装Git
    [root@tomcat soft] tar xf git-2.9.5.tar.gz -C /usr/local/   #解压并cd到解压目录
    [root@tomcat local] mv git-2.9.5/ git
    [root@tomcat /] cd /usr/local/git                   #进入解压目录
    [root@tomcat git-2.9.5] make prefix=/usr/local/git all      #编译源码包
    [root@tomcat git-2.9.5] make prefix=/usr/local/git install  #源码安装
    #修改环境变量
    [root@tomcat git-2.9.5] vim /etc/bashrc
    PATH=$PATH:$HOME/bin:/usr/local/git/bin  #添加内容
    [root@tomcat local] source /etc/bashrc
    [root@tomcat local] git --version    #测试是否安装成功
    git version 1.8.3.1
    
    • 关于bashrc和profile

    • /etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次!!!登录!!!时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置.

      /etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取

    jdk环境部署

    192.168.23.27执行

    #下载软件
    jdk-11.0.17_linux-x64_bin.rpm    #注意:因为版本原因不能用jdk9和jdk10
    链接: https://pan.baidu.com/s/1VBm6-WF-Wx-aMxF79JeZdw?pwd=17ey 提取码: 17ey 
    #解压安装
    [root@jenkins soft]# tar xv openjdk-11+28_linux-x64_bin.tar.gz -C /usr/local/
    [root@jenkins local]# mv jdk-11/ jdk
    #添加环境变量
    [root@jenkins local]# vim /etc/bashrc
    JAVA_HOME=/usr/local/jdk
    export PATH=$PATH:$JAVA_HOME/bin
    #测试jdk
    [root@jenkins soft]# java -version
    java version "11.0.17" 2022-10-18 LTS
    Java(TM) SE Runtime Environment 18.9 (build 11.0.17+10-LTS-269)
    Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.17+10-LTS-269, mixed mode)
    

    部署maven

    192.168.23.27执行

    #下载和解压Maven
    链接: https://pan.baidu.com/s/1RVJO4HscAuZ1ontIJrpx3g?pwd=x3q3 提取码: x3q3    #网盘提取
    wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.5.3/binaries/apache-maven-3.5.3-bin.tar.gz #官网下载
    [root@tomcat soft] tar zxvf apache-maven-3.5.3-bin.tar.gz -C /usr/local/
    [root@tomcat soft] mv /usr/local/apache-maven-3.5.3/ /usr/local/maven
    #修改环境变量
    [root@tomcat local] vim /etc/bashrc    #添加如下内容
    export M2_HOME=/usr/local/maven
    export M2=$M2_HOME/bin
    PATH=$M2:$PATH:$HOME/bin:/usr/local/git/bin
    export JAVA_HOME=/usr/local/jdk
    export PATH
    [root@tomcat local] source /etc/bashrc
    #测试maven
    [root@tomcat local] mvn -version
    Apache Maven 3.5.3 (3383c37e1f9e9b3bc3df5050c29c8aff9f295297; 2018-02-25T03:49:05+08:00)
    Maven home: /usr/local/maven
    Java version: 1.8.0_151, vendor: Oracle Corporation
    Java home: /usr/local/jdk/jre
    Default locale: zh_CN, platform encoding: UTF-8
    OS name: "linux", version: "3.10.0-1127.el7.x86_64", arch: "amd64", family: "unix"
    

    部署tomcat

    192.168.23.27执行

    #官网下载tomcat
    apache-tomcat-9.0.1.tar.gz 
    #网盘提取
    链接: https://pan.baidu.com/s/1e6TSpN7d1yvH6dXLSoSVsA?pwd=7smt 提取码: 7smt 
    #解压部署
    [root@tomcat soft] tar -zxvf apache-tomcat-9.0.1.tar.gz -C /usr/local/
    [root@tomcat soft] mv /usr/local/apache-tomcat-9.0.1/ /usr/local/tomcat
    #定义Tomcat所需环境变量
    [root@tomcat soft] vim /etc/profile    #插入如下内容
    CATALINA_HOME=/usr/local/tomcat
    export CATALINA_HOME
    [root@tomcat soft] source /etc/profile
    #启动Tomcat
    [root@tomcat soft] /usr/local/tomcat/bin/startup.sh
    #测试tomcat
    http://192.168.23.27:8080/
    

    image-20221121125832183

    部署Jenkins

    192.168.23.27执行

    #官网下载jenkins
     http://updates.jenkins-ci.org/download/war/2.319   #下载最新版
     #部署jenkins.war到tomcat下
     [root@tomcat soft] cp jenkins.war /usr/local/tomcat/webapps/
     #注释
     #jenkins密码忘了,可以重置它
     #重置jenkins
     关闭tomcat /usr/local/tomcat/bin/shutdown.sh
     rm -rf /usr/local/tomcat/webapp/jenkins*
     rm -rf ~/.jenkins*
     cp jenkins.war  /usr/local/tomcat/webapps/
     启动tomcat即可访问jenkins
     #启动tomcat: 注意启动tomcat会自动解压webapps下的war包
     [root@tomcat soft]# /usr/local/tomcat/bin/startup.sh
    

    登陆Jenkins

    http://192.168.23.27:8080/jenkins

    如果访问报错执行

    有两种方式解决:
    1.卸载原来的jdk,安装官方的jdk版本。
    2.在服务器额外配置插件,根据自己服务器的版本安装,如下:

    #Ubuntu9以上
    apt-get install ttf-dejavu
    
    #CentOS 6
    yum install dejavu-sans-fonts
    
    #CentOS 7
    yum install fontconfig
    

    image-20221121131154192

    添入以下文件密码到上图页面中

    [root@tomcat soft]# cat /root/.jenkins/secrets/initialAdminPassword
    bdc164a2206145668fc378ca0ba7a1af   #点击继续
    

    选择suggested的插件进行下载

    image-20221121131422591

    image-20221122095551074

    等待安装完成

    image-20221122095950497

    image-20221122100051255

    image-20221122100103503

    image-20221122100127752

    Jenkins插件管理

    简介

    我们配置的是 git + maven 方式的 自动化部署 所以git和maven的相关插件是必须的 还有一个ssh用于机器间的文件传送

    安装插件Deploy to container

    • 作用

      • 支持自动化将代码部署到tomcat容器
    • 安装过程

      • 系统管理-->插件管理-->可选插件-->过滤Deploy to container-->勾选,点击下边的按钮:直接安装,这个可能时间较久,等待即可

    image-20221122101033021

    image-20221122101121550

    image-20221122101142915

    安装插件Maven Integration

    • 作用
      • jenkins 利用maven编译,打包,所需插件

    image-20221122101314537

    image-20221122101329186

    安装git相关3个插件

    • GIT plugin
      • GitHub Authentication
      • GitHub Branch Source
      • GitHub Organization Folder

    安装过程中如可选插件里没有,就多个模块点一点可能已经安装过了

    image-20221122101509552

    image-20221122101706386

    image-20221122101745131

    安装插件:Publish Over SSH

    image-20221122102227702

    检查错误配置

    左侧:点击“系统管理”

    如果有“编码问题”错误,在Tomcat–>conf–>server.xml文件中修改即可

    [root@localhost ~]# head -1 /usr/local/tomcat/conf/server.xml 
    <?xml version="1.0" encoding="UTF-8"?>
    如果有”反向代理设置有误“错误,请忽略
    

    Jenkins系统设置

    • 注意

      • 这里没有强调的都设置为默认即可
    • 路径

      • 系统管理->(全局工具配置)Global Tool Configuration,配置jdk,git,maven的根目录

    image-20221122112712578

    配置jdk目录

    image-20221122112759517

    image-20221122113404376

    配置git目录

    image-20221122113037182

    image-20221122113111494

    配置maven

    image-20221122113148345

    image-20221122113255479

    关于重启jenkins

    • http://server_ip:8080/jenkins/restart
    • http://server_ip:8080/jenkins/exit
    • http://server_ip:8080/jenkins/reload

    SSH 设置

    简介

    (192.168.23.27)jinkens服务器上的maven将开发产生的*.war包,通过SSH自动推送到远程tomcat 服务器上(192.168.23.28),需要手工配置ssh key,配合自动化推送

    • 192.168.23.27 是jenkins
    • 192.168.23.28 是tomcat网站服务器,代表业务服务器

    jenkins服务器准备秘钥认证

    [root@jenkins local]# ssh-keygen     #一直回车
    [root@jenkins local]# ssh-copy-id 192.168.23.28   #把密钥推送到192.168.23.28上  注意这里的192.168.23/28是一台tomcat网站服务器。什么都不用安装,接到代码即可
    [root@jenkins local]# ssh root@192.168.23.28      #测试连接成功
    Last login: Wed Nov 23 11:40:18 2022 from 192.168.23.164
    [root@bogon ~]#
    

    在jenkins上配置ssh信息

    准备SSH私钥

    [root@bogon ~]# cat /root/.ssh/id_rsa
    #复制cat出来的所有内容,粘贴到下一步页面上的key中。
    -----BEGIN RSA PRIVATE KEY-----
    MIIEowIBAAKCAQEA0i1q/vpqEJStSCjks7wO+aKtNFxKVbhhgwW6C14MdG6aQ9J2
    OnwQGwBsW92ID+2cMom/lAdwf68zK3A71zgWIGvcBNhNujPTezyKSfdZIww2qymc
    zW81J1bPS1/V3EmbTewmuJvEpP8yaSAYNjIcMX2YW33DuO9/p18xV0tnDuzLNRpk
    MiPfjL4Ya8cc+fpe8rUNDbHMIbLNd2hKTF79kB+95bNT8GWCVP8NtN6K1qnyryQd
    /aSiEQHhUu1NTBbkjCeGVBmy+0rfk33viDK1dcg749FCiVv0iFqre439eZnuOtGj
    bL1B62YFjs24HVGmQJrJmU0GIidSXD5z8Cl0fQIDAQABAoIBAD3SSC+Z3srjwJiC
    FstbXJhHJmVJZEAUjPIqJBAl6MnyooOii04moeIfXMAkyFnPDWu8ItLa4VddZFK5
    n5BtmeyNbVkreqlzhxgvtYmOLPTnKcls4wd2V48rtKu6E8DJEdp4xOb2QoA55E0R
    uK1wTeSsybzXoFNsdwL3OB8yOa0kppYDcHRO0ke+MCZoE05g6L+4DNFSGxm6UQTd
    lO+Hx497x2kfCCMh3hPrQvBrVGjVABNlHI4/DXDCMvhbKvNWI7sxGwZgEHd8FeR5
    UTZ0xRA60LwBKnm+0eREY+Fpb1q1Pzz8KI91LTfXpJBjyHpv5LLjANV6+koKR3Mo
    nzDdGy0CgYEA/h4eWey5XixZ3UaMt9W0ubFM/k+9A6ztago0ZqFHY84lWIVJqvsF
    MY6AAnHGPNk7FG3BfyJOLinEcuGSQ2PavgfKVArFjhxPt1eGmhfse1MuZs/nzYJP
    fhuiy0bxNZAXvdbVAtpGbRByiP4iaP6/9+0bMJQiaftvXGayepys5AsCgYEA07v5
    0O5f8J3ApgP8LocqeQmsNCxyiiy/ZwXm/K++dqsUKScd2pjky3WkhbIBrXwemsmR
    5fQcOUmcOmrYt538IFZgl99kcNbLEKQy2/SY4373JuKrtjGsfghzMHWq1Za2a5cO
    hYMuq/4DKjpse5dprfh0RgbNadiY/5g9cbeCFpcCgYBqGWMswpTmx/fBVqp8OwMZ
    IPj3mY1ekn4R7y7PxvjKqBCZtBT9CY+ykD/MRXqyfzSWo/jNPyKLTa8TFDGAZ5m2
    DASjMFgprJJwB2BQyDpZh3JxRM8Q1B6ilaFT5EvjxETVY3ROm5oaAWsA3bK6SdsX
    Be17S+5Od8eYOdy9KttY3wKBgQCj60ZHIxSxYl/P5wvoNYqDNCLWLYbrRCNWLfKa
    s7A/jMjJ51escWvHvCcHvjygQ5Qp/11tamQjUcKaUze+R5f2rQiQ60iGNzP0iTo6
    oQ1wKk5LE3ceUSyaUg5jeOUuAETv3H1IjbunObrXiW2M7TbKkavqvr9ub1pbnlAL
    ZqdWtwKBgH6TXyNXjQcloU/kVh2d42gLp8lQ587mODl3G6wn7p9EKzDaEYXactj4
    rISNiJCw0G5Sorzry8e6QDBYZSrQes2AxKL5xAX4gs58fJwnbvKvCzpubASM05ml
    ym/eHttFhRFtrYudgjsuyag1wJ8Ua1GzI1ess8/t32eHwLqmU6lR
    -----END RSA PRIVATE KEY-----
    

    进入jenkins系统设置

    image-20221122114711439

    image-20221122115546167

    新建任务

    创建任务

    定义名称和类型

    image-20221122134147882

    设置maven

    公有git仓库

    image-20221122134431355

    选择版本控制器和仓库地址

    https://github.com/bingyue/easy-springmvc-maven

    注意:如果是私有仓库,这里需要建立credentials身份认证

    image-20221122134756420

    设置触发器(保持默认)

    image-20221122134927656

    设置构建(编译打包)

    手动添加Goals and options clean package -Dmaven.test.skip=true

    image-20221122135045149

    构建后操作

    在构建后设置中 选择:(send build artifacts over ssh)通过SSH发送构建工件

    image-20221122135239227

    image-20221122135419228

    • 说明:

      • name ssh server 因为之前的配置会默认出现tomcat业务服务器的名字

      • source file

        • target/.war 构建之后,在jenkins服务器上是可以自动看到war包的,(该路径不需要创建) ls /root/.jenkins/jobs/testjob1/builds/target/.war
      • Remove prefix 自动删除路径前缀(不需要创建路径前缀)

      • Remote directory tomcat业务服务器上的路径,需要提前在192.168.23.28(tomcat)上创建该目录。用来存放网站源代码。(需要后台创建)[root@bogon local]# mkdir /jenkins/war -p

      • Exec command tomcat(192.168.0.109)在接收到源码之后的自定义动作。
        比如:将源码拷贝到网站的主目录(/jenkins),并执行一些其他操作如重启服务器等(或创建文件touch)(需要后台创建)

      • [root@bogon local]# mkdir /jenkins/sh
        [root@bogon local]# vi /jenkins/sh/1.sh
        touch /123.com
        [root@bogon local]# chmod +x /jenkins/sh/1.sh
        [root@bogon local]# chmod +x /jenkins/sh/
        

    开始构建

    image-20221122135449316

    查看构建结果

    image-20221122140345885

    image-20221122150911852

    image-20221122150926237

    观察tomcat网站服务器,代码和脚本

    [root@bogon ~]# ls /jenkins/
    sh  war
    [root@bogon ~]# ls /jenkins/war/
    easy-springmvc-maven.war            #easy-springmvc-maven.war 就是推送过来的网站源码了
    [root@bogon ~]# ls /123.com
    /123.com
    

    本帖子中包含资源

    您需要 登录 才可以下载,没有帐号?立即注册