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,其他配置不变

相关推荐
oscar9991 小时前
CI_CD Pipeline趋势:加速集成与交付
运维·ci/cd·devops
CrazyClaz3 小时前
持续集成CI
ci/cd·持续集成
大布布将军4 小时前
☁️ 自动化交付:CI/CD 流程与云端部署
运维·前端·程序人生·ci/cd·职场和发展·node.js·自动化
梁萌5 小时前
Jenkins流水线配置的两种方式
运维·jenkins·jenkinsfile·流水线配置
筑梦之路6 小时前
Jenkins 构建部署多模块Java应用流水线参考——筑梦之路
java·运维·jenkins
K_Men1 天前
springboot 接入Elasticsearch的聚合查询
spring boot·elasticsearch·jenkins
电商API&Tina1 天前
【电商API接口】多电商平台数据API接入方案(附带实例)
运维·开发语言·数据库·chrome·爬虫·python·jenkins
梁萌1 天前
Jenkins自动化部署(docker)
docker·自动化·jenkins·流水线·cicd·smartadmin
tzhou644521 天前
搭建Jenkins+GitLab持续集成环境
ci/cd·gitlab·jenkins
编程、小哥哥1 天前
AI之gitlab代码分析之按迭代评审
gitlab