Skip to content

部署VitePress

在本地编辑 VitePress 项目

在本地电脑上创建或克隆一个 VitePress 项目。 使用vitepress命令启动开发服务器进行编辑和预览。可以使用以下命令

bash
npm run docs:dev

编辑并保存你的 VitePress 项目,直到完成所需的更改。

在本地构建静态文件

在本地运行以下命令以构建 VitePress 项目,生成静态文件

bash
npm run docs:build

这将会在你的项目目录下的.vitepress/dist文件夹中生成静态文件。

设置 Git 仓库

确保你的服务器 A 上有一个 Git 仓库,该仓库将用于存储构建好的静态文件。假设该仓库位于/var/www/html目录

bash
ssh user@服务器A的IP 'mkdir -p /var/www/html && cd /var/www/html && git init --bare'

在本地电脑上,将.vitepress/dist目录设置为Git仓库

bash
cd .vitepress/dist
git init
git remote add origin ssh://user@服务器A的IP/var/www/html

将构建的静态文件推送到服务器 A

.vitepress/dist目录中提交静态文件并推送到服务器A

bash
git add .
git commit -m "Deploy static files"
git push -u origin master

设置服务器 A 上的自动部署

在服务器 A 上,配置post-receive钩子,以便在收到新文件时自动部署。进入Git仓库目录并创建`hooks/post-receive文件

bash
nano /var/www/html/hooks/post-receive

post-receive文件中添加以下脚本,以便自动部署:

bash
#!/bin/bash
TARGET_DIR=/var/www/html/deploy
GIT_DIR=/var/www/html

# 如果目标目录不存在,则创建它
mkdir -p $TARGET_DIR

# 将最新的静态文件复制到目标目录
GIT_WORK_TREE=$TARGET_DIR git checkout -f

echo "Deployment complete."

保存并关闭文件,然后给它赋予可执行权限

bash
chmod +x /var/www/html/hooks/post-receive

本地修改后重新推送

在本地继续编辑你的 VitePress 项目,完成编辑后重新构建静态文件

bash
npm run docs:build

进入.vitepress/dist目录,将更改提交到Git仓库并推送到服务器

bash
cd .vitepress/dist
git add .
git commit -m "Update deployment"
git push origin master

结果

每当你在本地编辑并构建 VitePress 项目后,通过 Git 推送静态文件到服务器 A 上时,post-receive钩子将会自动将最新的文件部署到目标目录,实现自动发布。

基于 MIT 许可发布

本站访客数 人次 本站总访问量