一、安装宝塔面板(远程到服务器使用命令行安装)
- 宝塔面板
- 远程到服务器使用命令行安装
二、安装nginx(宝塔面板软件商店安装)
三、安装git(远程到服务器使用命令行安装)
安装脚本
# 安装脚本
yum install git
# 检查安装情况
git --version
在服务器上配置SSH公共密钥
# 生成 SSH 密钥, 一路回车
ssh-keygen -t rsa -C "你的邮箱"
# 查看 SSH 公钥
cat ~/.ssh/id_rsa.pub
# 复制生成后的ssh key,添加到Gitee的个人配置中
# 设置全局变量
git config --global user.name "你的用户名"
git config --global user.email "你的邮箱"
# 会生成.gitconfig 的文件 用于保存
git config --global credential.helper store
# 如果报错: No such file or directory,就用下一行的代码
cat .gitconfig
# 显示内容
cat ~/.gitconfig
上述步骤中复制生成后的ssh key,添加到Gitee的个人配置中
在服务器上使用git命令拉取项目
# SSH地址
git clone git@gitee.com:你的Gitee 名/项目名.git
四、安装WebHook(宝塔面板软件商店安装)
添加hook
- 宝塔WebHook使用方法:
GET/POST:http://IP:PORT/hook?access_key=HOOK密钥¶m=自定义参数(在hook脚本中使用$1接收)
例如:你的gitee项目名称为test-project,那么WebHook的完整地址为:http://IP:PORT/hook?access_key=HOOK密钥¶m=test-project
纯拉取脚本
- 以下为纯拉取的脚本,可以直接复制使用,只需要替换脚本中的SSH地址,其他不需要修改
#!/bin/bash
echo ""
#输出当前时间
date --date='0 days ago' "+%Y-%m-%d %H:%M:%S"
echo "-------开始-------"
#判断宝塔WebHook参数是否存在
if [ ! -n "$1" ];
then
echo "param参数错误"
echo "End"
exit
fi
#服务器 git 项目路径
gitPath="/www/wwwroot/$1"
#码云项目 git 地址 注意使用SSH地址
gitHttp="git@gitee.com:你的Gitee 名/$1.git"
echo "路径:$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 clean -f
git pull origin master
echo "拉取完成"
#执行npm
#执行编译
#npm run build
#设置目录权限
chown -R www:www $gitPath
echo "-------结束--------"
exit
else
echo "该项目路径不存在"
echo "End"
exit
f
五、在Gitee中配置WebHook地址