Appearance

利用webhook自动部署博客

coderzhouyu

利用webhook自动部署博客

1. 生成 ssh key

ssh-keygen -t ed25519 -C "coderzhouyu"

2. 将公钥添加到gitee

3. 在服务器上安装git

apt-get install git

4. 在服务器上创建一个目录用来存放博客

mkdir \www\blog

5. 在服务器上克隆博客仓库

git clone git@xxxxxxxx.git

6. 在服务器上安装nodejs 和 npm

# 安装nvm
bash -c "$(curl -fsSL https://gitee.com/RubyMetric/nvm-cn/raw/main/install.sh)"
# 安装nodejs
nvm install 18

7. 在服务器上安装yarn

npm install -g yarn --registry=https://registry.npm.taobao.org
``

## 8.配置webhook

```bash
# !/bin/bash
# 输出当前时间
date --date='0 days ago' "+%Y-%m-%d %H:%M:%S"
echo "-------开始-------"
cd /www/blog
rm  -rf /www/blog/.vuepress/dist/*
git reset --hard origin/master
git pull
echo "-------安装依赖-------"
yarn install

echo "-------开始构建-------"
yarn build

echo "-------构建完成-------"
echo "-------开始部署-------"
rm  -rf /www/wwwroot/www.zhouxiaoyu.vip/*

# 移动操作
# 源目录
src_dir="/www/blog/.vuepress/dist/"
# 目标目录
dest_dir="/www/wwwroot/www.zhouxiaoyu.vip/"

# 移动源目录下所有文件到目标目录
cp -rf ${src_dir}* ${dest_dir}

echo "-------设置权限-------"
chown -R www:www /www/wwwroot/www.zhouxiaoyu.vip
chmod -R 755 /www/wwwroot/www.zhouxiaoyu.vip
echo "-------完成-------"
Last Updated 2023/10/4 23:12:45