Gitlab和Jenkins集成 实现CI (三)

Gitlab和Jenkins集成 实现CI (一)
Gitlab和Jenkins集成 实现CI (二)
Gitlab和Jenkins集成 实现CI (三)

自动部署

配置免密ssh

进入http服务器

生成ssh密钥
ssh-keygen -t rsa

进入jenkins(容器)

拷贝公钥
ssh-copy-id http服务器用户名@http服务器ip
#输入http服务器密码

配置jenkis构建触发器

生成拷贝脚本
vi /var/jenkins_home/scp_dev_env.sh

#!/bin/sh

scp /var/jenkins_home/workspace/jenkins项目名称/* http服务器用户名@http服务器ip:/home/docker/www/项目根目录/
ssh http服务器用户名@http服务器ip 'composer -V' # 这里是php执行composer,如果是java可以执行maven等

# 设置执行权限
chmod +x /var/jenkins_home/scp_dev_env.sh

# 运行异常脚本,保证脚本无异常,可正常执行得到想要的结果
/bin/sh /var/jenkins_home/scp_dev_env.sh

#去http服务器根目录查看拷贝是否正确
配置构建步骤(Build Steps)

进入项目

Configure
Build Steps
Add build step 选择Run with timeout
Run with timeout
Time-out strategy
按照实际选择超时机制
Build Step
选择Execute shell
Command
填写脚本路径

注意,如果无需超时设置,需要保证脚本无论执行多久一定成功,在Add build step的时候直接选择Execute shell,其他配置不变

相关推荐

  1. GitlabJenkins集成 实现CI ()

    2024-02-10 05:52:02       58 阅读
  2. 使用 Jenkins 实现持续集成持续部署(CI/CD

    2024-02-10 05:52:02       18 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-10 05:52:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-10 05:52:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-02-10 05:52:02       87 阅读
  4. Python语言-面向对象

    2024-02-10 05:52:02       96 阅读

热门阅读

  1. C#系列-简介(1)

    2024-02-10 05:52:02       49 阅读
  2. 《被讨厌的勇气》书摘

    2024-02-10 05:52:02       50 阅读
  3. 聊聊PowerJob的任务调度

    2024-02-10 05:52:02       37 阅读
  4. C语言——oj刷题——字符串左旋

    2024-02-10 05:52:02       42 阅读
  5. 学习Android的第九天

    2024-02-10 05:52:02       46 阅读