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

相关推荐
Irene19911 小时前
CI/CD 是什么意思
ci/cd·持续集成·持续交付部署
HIT_Weston2 小时前
57、【Ubuntu】【Gitlab】拉出内网 Web 服务:Gitlab 配置审视(一)
前端·ubuntu·gitlab
HIT_Weston4 小时前
58、【Ubuntu】【Gitlab】拉出内网 Web 服务:Gitlab 配置审视(二)
前端·ubuntu·gitlab
HIT_Weston5 小时前
59、【Ubuntu】【Gitlab】拉出内网 Web 服务:Gitlab 配置审视(三)
前端·ubuntu·gitlab
easy_coder5 小时前
Argo 家族:云原生 CI/CD 的双剑合璧与协同之美
ci/cd·云原生·云计算
笨鸟贤妃6 小时前
离线安装(升级)Jenkins和pipeline、multijob等插件【无痛版】
pipeline·jenkins·jenkins插件
GeminiJM16 小时前
Elasticsearch minimum_should_match 参数详解
大数据·elasticsearch·jenkins
weixin_3077791318 小时前
Jenkins中的Jakarta Activation API插件:功能、使用与最佳实践
运维·开发语言·ci/cd·自动化·jenkins
一念一花一世界1 天前
Arbess从基础到实践(5) - 集成GitLab+SonarQube搭建Java项目自动化部署
java·gitlab·sonarqube·cicd·arbess
weixin_307779131 天前
Jenkins Jakarta Mail API 插件:邮件功能的核心库
运维·开发语言·架构·jenkins