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

相关推荐
lvbinemail5 小时前
配置jenkins.service
java·运维·jenkins·systemctl
快快起来写代码5 小时前
Jenkins学习
数据库·学习·jenkins
凉云生烟6 小时前
cpolar助力Grafana告别局域网束缚!让数据监控触手可及
服务器·网络·信息可视化·gitlab·内网穿透
shimly1234567 小时前
为公司服务器配置 gitlab CI/CD
gitlab
小舞O_o7 小时前
gitlab文件上传
linux·服务器·git·python·目标检测·机器学习·gitlab
yangminlei1 天前
IK分词器
运维·jenkins
JavaLearnerZGQ1 天前
Docker安装ElasticSearch8.13.0、Kibana、中文分词器,版本
docker·中文分词·jenkins
遇见火星1 天前
CI/CD实战:从手动部署到自动化流水线
运维·ci/cd·自动化
yangminlei1 天前
安装 Elasticsearch
运维·jenkins
码农阿豪1 天前
Jenkins自动化部署故障排查实战:从错误日志到解决方案
运维·自动化·jenkins