Gitlab和Jenkins集成 实现CI (三)

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

自动部署

配置免密ssh

进入http服务器

生成ssh密钥
shell 复制代码
ssh-keygen -t rsa

进入jenkins(容器)

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

配置jenkis构建触发器

生成拷贝脚本
shell 复制代码
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,其他配置不变

相关推荐
计算机毕设定制辅导-无忧学长5 小时前
Docker 与持续集成 / 持续部署(CI/CD)的集成(一)
ci/cd·docker·容器
[奋斗不止]7 小时前
Jenkins 通过 Execute Shell 执行 shell 脚本 七
jenkins·jenkins shell·jenkins 执行sh
Long_poem9 小时前
【自学笔记】版本控制与持续集成基础知识点总览-持续更新
笔记·ci/cd
[奋斗不止]9 小时前
Pipeline 获取 Jenkins参数
jenkins·jenkins 参数·pipeline 参数
tingting01199 小时前
jenkins 2.380配置从节点
运维·jenkins
[奋斗不止]9 小时前
Pipeline 定义 Parameter 显示在Jenkins 构建中
jenkins·jenkins 参数·pipeline 自定义参数
小奏技术10 小时前
github如何基于workflow实现自动集成测试提升代码质量
后端·ci/cd·开源
Yuanymoon1 天前
人工智障的软件开发-自动流水线CI/CD篇-docker+jenkins部署之道
ci/cd·docker·ai·jenkins
Anna_Tong2 天前
DevOps 进化论:腾讯云 CODING-TM 如何助力企业敏捷转型?
运维·ci/cd·项目管理·腾讯云·敏捷开发·devops·代码托管
麒麟而非淇淋2 天前
Day7 微服务 Elasticsearch搜索引擎、DSL查询(叶子查询、复合查询、排序、分页、高亮)、RestClient查询、数据聚合
java·运维·微服务·jenkins