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

相关推荐
A__tao5 小时前
Elasticsearch Mapping 一键生成 Proto 文件(支持嵌套 + 注释过滤)
大数据·elasticsearch·jenkins
小叶lr6 小时前
jenkins打包前端样式丢失/与本地不一致问题
运维·前端·jenkins
REDcker6 小时前
Jenkins 开源 CI/CD 平台概览与版本演进
ci/cd·开源·jenkins
观无10 小时前
Jenkins 完整搭建 + .NET8 全自动发布
运维·jenkins
观无11 小时前
Windows 本地电脑搭建一个私有的、类似 Gitee 的 Git 服务
gitee·jenkins·.netcore
REDcker11 小时前
CI/CD 平台选型对比:与 Jenkins 同类的方案
jenkins·ci·cd
ACGkaka_2 天前
SpringBoot 实战(四十一):集成 Elasticsearch
spring boot·elasticsearch·jenkins
jekc8682 天前
Ubuntu-GitLab
服务器·ubuntu·gitlab
在路上走着走着3 天前
openclaw v2026.4.5 版本 提示 pairing required 解决方案
gitlab
Arvin6273 天前
Jenkins 任务执行完成后会kill掉的衍生进程
运维·servlet·jenkins