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

相关推荐
tianyuanwo15 小时前
Jenkins × Gerrit 集成:自动触发构建的全流程解析
运维·servlet·jenkins
勿芮介18 小时前
【研发工具】Jenkins镜像源配置问题及解决方案
运维·servlet·jenkins
隔窗听雨眠19 小时前
GitLab CI前端加载慢优化实录
ci/cd·gitlab
jiayong2320 小时前
MySQL 排序规则冲突问题与 utf8mb4_general_ci 统一方案
android·mysql·ci/cd
Cat_Rocky21 小时前
Jenkins通过kubernetes连接K8s集群
运维·kubernetes·jenkins
若鱼文化创意1 天前
品牌设计CI规划使用后交付偏差先分项核对验收标准
python·ci/cd
码云骑士2 天前
Gemini实战:用AI写CI/CD脚本,提升研发效能
人工智能·ci/cd
齐潇宇2 天前
Jenkins 自动化部署 Tomcat + PHP
linux·运维·容器·tomcat·jenkins
Cat_Rocky2 天前
Linux-基于Jenkins自动打包并部署Tomcat环境
linux·tomcat·jenkins
tang7451639622 天前
Huawei Cloud EulerOS 2.0(x8664)安装 Jenkins
java·servlet·jenkins