章工运维 章工运维
首页
  • linux
  • windows
  • 中间件
  • 监控
  • 网络
  • 存储
  • 安全
  • 防火墙
  • 数据库
  • 系统
  • docker
  • 运维工具
  • other
  • elk
  • K8S
  • ansible
  • Jenkins
  • GitLabCI_CD
  • 随笔
  • 面试
  • 工具
  • 收藏夹
  • Shell
  • python
  • golang
友链
  • 索引

    • 分类
    • 标签
    • 归档
    • 首页 (opens new window)
    • 关于我 (opens new window)
    • 图床 (opens new window)
    • 评论 (opens new window)
    • 导航栏 (opens new window)
开往 (opens new window)
GitHub (opens new window)

章工运维

业精于勤,荒于嬉
首页
  • linux
  • windows
  • 中间件
  • 监控
  • 网络
  • 存储
  • 安全
  • 防火墙
  • 数据库
  • 系统
  • docker
  • 运维工具
  • other
  • elk
  • K8S
  • ansible
  • Jenkins
  • GitLabCI_CD
  • 随笔
  • 面试
  • 工具
  • 收藏夹
  • Shell
  • python
  • golang
友链
  • 索引

    • 分类
    • 标签
    • 归档
    • 首页 (opens new window)
    • 关于我 (opens new window)
    • 图床 (opens new window)
    • 评论 (opens new window)
    • 导航栏 (opens new window)
开往 (opens new window)
GitHub (opens new window)
  • ansible系列文章

  • Kubernetes笔记

  • elk

  • jenkins

    • jenkins容器安装
    • jenkins流水线语法介绍
    • jenkins常用插件汇总及介绍
    • jenkins配置连接slave从节点
    • jenkins配置android发布
    • jenkins配置ios发布
    • jenkins使用rpm方式安装
    • jenkins部署php程序
      • jenkins部署java程序
      • jenkins部署vue程序
      • jenkins使用流水线部署go程序
    • GitLabCI_CD

    • 专题
    • jenkins
    章工运维
    2023-06-24
    目录

    jenkins部署php程序

    # 配置需要发布的项目参数

    5f17ab3139bb04c1.jpg

    b5dc5b12f9659cc9.jpg

    # 配置源码管理

    3a27d948f2a6aaff.jpg

    # 配置构建环境

    e8d7d0c878761ea7.jpg

    6986c45020cc6851.jpg

    # 配置需要执行的shell

    a96eee72e410c577.jpg

    rsync -avzu --partial --delete -e "ssh -p 22" ${WORKSPACE}/commands ${WORKSPACE}/components ${WORKSPACE}/controllers ${WORKSPACE}/forms ${WORKSPACE}/models ${WORKSPACE}/helpers jenkinstransfer@xxxxx:/workspace/tmp/ --exclude ".gitignore"
    
    1

    # 配置构建后的参数

    b764f80b40db2ff6.jpg

    #!/bin/bash
    if [ "$deploy" = "update" ];then
    sudo /workspace/sh/update.sh ${BUILD_VERSION}
    else
    sudo /workspace/sh/rollback.sh ${ROLLBACK_VERSION}
    fi
    
    1
    2
    3
    4
    5
    6

    脚本如下

    update.sh

    #!/bin/bash
    
    BUILD_VERSION=$1
    cd /workspace/sh/backup
    
    tar -czf ${BUILD_VERSION}.tar.gz /workspace/test/commands \
    /workspace/test/components \
    /workspace/test/controllers \
    /workspace/test/forms \
    /workspace/test/models \
    /workspace/test/helpers
    
    if [ "$?" -eq "0" ];then
      echo "备份${BUILD_VERSION}.tar.gz成功"
      echo "以下执行本地更新"
    fi
    rsync -a /workspace/tmp/ /workspace/test/ | tee /workspace/sh/logs/update-`date +"%Y%m%d-%H%M%S"`.log
    
    chown -R root:root /workspace/test
    
    
    if [ "$?" -eq "0" ];then
      echo "更新成功"
    else
      echo "更新失败"
    
    fi
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27

    rollback.sh

    #!/bin/bash
    
    ROLLBACK_VERSION=`echo $1|col -b`
    
    cd /workspace/sh/backup/
    
    if [ -s ${ROLLBACK_VERSION}.tar.gz ];then
      echo "解压缩文件:${ROLLBACK_VERSION}.tar.gz"
      tar -xf ${ROLLBACK_VERSION}.tar.gz
    fi
    if [ "$?" -eq "0" ];then
      echo "解压成功"
    else
      echo "error:解压失败" >&2
      exit 1
    fi
    rsync -av /workspace/sh/backup/workspace/test/* /workspace/test/
    if [ "$?" -eq "0" ];then
      echo "回滚成功"
    else
      echo "error:回滚失败" >&2
      exit 1
    fi
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    微信 支付宝
    上次更新: 2023/06/25, 21:59:56

    ← jenkins使用rpm方式安装 jenkins部署java程序→

    最近更新
    01
    求职公告
    02-22
    02
    k8s部署java项目
    02-22
    03
    k8s配置go服务
    02-18
    更多文章>
    Theme by Vdoing | Copyright © 2019-2025 | 点击查看十年之约 | 鄂ICP备2024072800号
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式