PHP+Lunix+GIT 如何快速使用宝塔WebHook快速自动化部署

搭建前需准备:git仓库(我这里使用的gitee 其他的异曲同工)

宝塔一个

背景:很多小伙伴在本地开发完上传完远程还需要在服务器进行拉取项目才会更新 ,这样的操作虽然对线上项目较为安全但是在处于测试情况下费事费力,所以在这里运用webhook快速部署一个"钩子"

复制代码
git pull origin master

操作:

1、给对应仓库部署公钥

如果不知道这个公钥在哪里的小伙伴可以继续往下看:

复制代码
/**
** 使用这命令进入服务器查看是否存在id_rsa.pub 公钥
**/
cd ~/.ssh 

/**
**生成
**/
ssh-keygen -t rsa 

/**
**查看
**/
cat ~/.ssh/id_rsa.pub

将服务器所得到的公钥复制到 下面,这一步就ok了

2、宝塔安装webhook及其部署

添加Hook

复制代码
#!/bin/bash
echo ""
#输出当前时间
date --date='0 days ago' "+%Y-%m-%d %H:%M:%S"
echo "Start"
#判断宝塔WebHook参数是否存在
#if [ ! -n "$1" ];
#then
#          echo "param参数错误"
 #         echo "End"
 #         exit
#fi
#git项目路径 项目代码服务器所在位置路径
gitPath=" "
#git 网址 ssh网址避免用https
gitHttp=" "

echo "Web站点路径:$gitPath"
 
#判断项目路径是否存在
if [ -d "$gitPath" ]; then
        cd $gitPath
        #判断是否存在git目录
        if [ ! -d ".git" ]; then
                echo "在该目录下克隆 git"
                git clone $gitHttp gittemp
                mv gittemp/.git .
rm -rf gittemp
        fi
        #拉取最新的项目文件
        #git reset --hard origin/master
        git pull
        #设置目录权限
        #chown -R www:www $gitPath
        echo "End"
        exit
else
        echo "该项目路径不存在"
        echo "End"
        exit
fi

将以上脚本写入 注意项目路径

配置完后需要重启宝塔服务器!!!!!要不然配置文件不生效

3、仓库部署webhooks

url 后的随机码可以不用加

下面的选择事件默认或者 自己勾选

跑测一下!!!宝塔查看日志 或者 在gitee仓库中查看请求历史

相关推荐
北京耐用通信4 小时前
工业自动化中耐达讯自动化Profibus光纤链路模块连接RFID读写器的应用
人工智能·科技·物联网·自动化·信息与通信
岱宗夫up4 小时前
Git不是工具,是协作哲学
git
绾樘5 小时前
RHCE--基于Nginx的Web服务器配置
运维·服务器·nginx
生活很暖很治愈5 小时前
Linux基础开发工具
linux·服务器·git·vim
打工的小王6 小时前
docker(三)具体项目的部署
运维·docker·容器
极地星光7 小时前
如何使用 Git 实现 revert
git
厨 神7 小时前
IFLOW-Git-Claude
git·cloudera
一叶星殇8 小时前
.NET WebAPI:用 Nginx 还是 IIS 更好
运维·nginx·.net
0思必得08 小时前
[Web自动化] 爬虫之API请求
前端·爬虫·python·selenium·自动化
LEEE@FPGA10 小时前
zynq 是不是有了设备树,再linux中不需要编写驱动也能控制
linux·运维·单片机