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

相关推荐
m***06682 小时前
Java进阶(ElasticSearch的安装与使用)
java·elasticsearch·jenkins
1688red10 小时前
Elasticsearch集群安装部署及kibana配置
大数据·elasticsearch·jenkins
奋斗者1号10 小时前
小型团队 CI/CD 快速搭建指南
ci/cd
Franciz小测测12 小时前
GitLab 双物理机高可用新方案(基于 Rsyncd + Keepalived+PostgreSQL 流复制)
数据库·postgresql·gitlab
行走的陀螺仪13 小时前
GitLab + GitLab Runner 本地 Docker 部署实战文档
ci/cd·docker·gitlab·php·gitlab-runner
未定义.2211 天前
第2篇:请求实战!覆盖GET/POST/请求头/参数全场景
java·python·http·servlet·自动化·jenkins
危险、1 天前
Win11 安装GitLab Runner
gitlab
人间打气筒(Ada)2 天前
代码版本控制系统变更
git·svn·云计算·gitlab·ci·cd·代码变更
lGSrsEpqUxi2 天前
基于K-L级数展开法与FLAC3D的岩土体参数随机场模拟
jenkins
人间打气筒(Ada)3 天前
Jenkins高级管理
运维·云原生·云计算·jenkins·ci·cd·持续集成