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仓库中查看请求历史

相关推荐
苹果醋312 小时前
iview— Select— Option选中后有空格
运维·vue.js·spring boot·nginx·课程设计
wregjru12 小时前
【操作系统】linux常用指令
linux·运维·服务器
看-清13 小时前
Docker离线安装部署xxl-job流程
运维·docker·容器
建群新人小猿13 小时前
陀螺匠企业助手-我的日程
android·大数据·运维·开发语言·容器
云和数据.ChenGuang13 小时前
git commit复合指令
大数据·git·elasticsearch
lifewange14 小时前
Linux 服务管理故障排查小手册
linux·运维·服务器
十六年开源服务商14 小时前
WordPress网站信誉评价与运维服务怎样提升
运维
无代码专家14 小时前
生产ERP解决方案:重构制造企业数字化运营体系
运维·低代码·重构·制造
学习中....14 小时前
Claude Code + mcp-ssh-manager:让AI成为随身运维专家
运维·ssh
zhong_kh15 小时前
字符串判断
linux·运维·服务器