美文网首页
GoCD 整行记(五):部署应用

GoCD 整行记(五):部署应用

作者: 小麻烦它爹 | 来源:发表于2021-04-03 22:08 被阅读0次

    上篇文章我们已经构建好应用 docker 镜像,并且将 docker 镜像推送到 DockerHub 仓库了。

    这篇文章我们将完成最后一步,将应用部署到服务器上去。

    功能梳理

    要将 docker 镜像部署到服务器,其实很简单: 使用 ssh 登录到服务器,然后执行部署命令即可

    1. 我们选择 docker-compose 用来部署 docker 镜像,需要在服务器上安装 docker-compose 命令,这里有安装方法

    2. docker-compose 需要一个 docker-compose.yml 文件

    3. pipeline 中新增一个阶段 deploy ,用于执行远程部署脚本

    4. 我们将相关脚本都放入一个 Git 项目中,让 pipeline 在执行时自动获取相关代码

      参考 https://github.com/hezhong0711/gocd-devops-demo

    新建 Materias

    1. 进入 pipeline 的 Materias 管理界面

      Materias 管理界面
    2. 点击 Add Materias 按钮

      • Material Type: Git
      • Repository URL: https://github.com/hezhong0711/gocd-devops-demo
      • Repository Branch: main
      • Alternate Checkout Path: gocd-devops-demo
      • Repository polling behavior: 勾选第二个 Fetch updates to this repository only on webhook or manual trigger
        • 这个选项指定 pipeline 在手动触发执行时才去拉取最新的代码,而不会在有代码更新时自动触发 pipeline 执行
          配置 Materias 1
          配置 Materias 2
    3. 点击 Save 按钮保存配置

    修改流水线配置

    添加阶段 deploy

    1. 进入 Stage 配置界面

      Stage 配置界面
    2. 点击 Add new stage 按钮

      此阶段需要执行两个任务

      1. docker-compose.yml 文件复制到服务器上
      2. 执行 docker-compose 命令,部署服务

      配置如下

      • Command: ./script/copy-deploy-file.sh 此脚本用于远程拷贝文件

      • Arguments: 此脚本需要两个参数,第一个是要拷贝的文件路径,第二个是远程服务器路径

        ./docker-compose/docker-compose.yml 
        /root/docker-compose.yml
        
      • Working Directory: gocd-devops-demo, 这个是代码的下载路径


        添加 Stage
    3. 点击 Save 按钮保存配置

      新增 Stage 结果
    4. 进入 TASKS 配置界面,添加第二个任务

      • 选中 Custom Command,点击 Add Task 按钮

        TASKS 配置界面
      • Command: ./script/deploy.sh 此脚本会在服务器上部署应用

      • Working Directory: gocd-devops-demo

        Tasks 配置界面
    5. 点击 Save 按钮保存配置

      配置结果

    配置环境变量

    deploy 阶段中执行的脚本需要登录远程服务器,我在脚本中时通过环境变量的方式获取到远程服务器的 hostusernamepassword,因此,我们需要给任务添加相应的环境变量

    1. 进入环境变量配置界面
    2. 点击 Secure Variables 下的 + Add 按钮
      • 添加 SERVER_USERNAME 变量,后面输入服务器的 ssh 用户名
      • 添加 SERVER_HOST 变量,后面输入服务器的域名或者 IP 地址
      • 添加 SERVER_PASSWORD 变量,后面输入服务器的 ssh 登录密码
    3. 点击 SAVE 按钮,保存配置
      环境变量配置界面

    运行流水线

    1. 查看运行结果


      运行结果
    2. 查看日志


      运行日志
    3. 登录服务器查看应用是否部署成功

    总结

    至此,一条从代码提交应用部署的完整流水线就算完成了。本系列文章详细的介绍了从 GoCD 环境搭建到流水线配置的完整流程,希望对各位有所帮助。

    相关文章

      网友评论

          本文标题:GoCD 整行记(五):部署应用

          本文链接:https://www.haomeiwen.com/subject/eowhkltx.html