通过 GitHub Actions 自动部署 hexo 到 CapRover 的服务器
自动化部署 hexo 到个人服务器上
准备工作
- 安装 CapRover
本人使用 CapRover 管理自己的服务器,具体安装教程可参考 使用 CapRover 管理你的服务器 - 在 CapRover 创建一个
blog
自定义空白应用 - 在 GitHub 创建一个仓库,存放博客的代码
- 本机使用 hexo 创建博客,并关联到 GitHub 上的仓库
编写 workflow
在博客仓库的这个位置编写 workflow
1 | name: Build & Deploy |
编写 CapRover 定义文件
见CapRover 官方文档
在博客仓库的根目录下,创建 captain-definition
文件,指定使用dockerfile
的方式部署
1 | { |
编写 dockerfile 文件
在博客仓库的根目录下,创建 Dockerfile
文件。
使用nginx
代理博客文件。
注意:Dockerfile 的复制操作,第一层文件夹会自动解包。
1 | FROM nginx:latest |
编写 nginx 配置文件
因为使用了 nginx 代理博客,这里写一下 nginx 的配置文件
在博客仓库的根目录下,创建 blog.conf
文件。
1 | server { |
设置 GitHub Actions 参数
回看一下我们编写的 workflow 文件,使用了三个参数CAPROVER_SERVER
、APP_NAME
、APP_TOKEN
,我们需要在 GitHub 上设置一下参数的值。
登录 GitHub,打开博客仓库,点击 Settings
,右侧找到Secrets and variables
,选择Actions
,右边点击添加参数。
- CAPROVER_SERVER
你的服务器的 CapRover 的后台的域名,要填完整。eg:https://captain.your-want-name.example.com"
。 - APP_NAME
你的博客在 CapRover 上应用名。eg:blog
。 - APP_TOKEN
你的博客应用的 token,登录你自己的 CapRover,进入你创建博客应用,选择Deployment
,找到Enable App Token
,点击生成APP_TOKEN
,复制到 GitHub 上。
推送代码到 GitHub 仓库
写完博客,将代码 push 到 GitHub 的仓库,进仓库网页,切换Actions
标签,观察执行情况。
通过 GitHub Actions 自动部署 hexo 到 CapRover 的服务器
https://blog.feijidui.com/linux-github-actions-hexo-caprover/