条件
- 拥有GitHub账号
- 已经构建好docusaurus
- 拥有自己的服务器
部署
服务器生成ssh密钥
运行 ssh-keygen
命令即可生成公钥和私钥,只要把私钥添加到项目的仓库环境变量中即可
进入到你要用于ssh连接的用户的.ssh目录下,读取私钥
添加仓库环境变量
分别添加下面三个变量
变量名 |
说明 |
REMOTE_HOST |
服务器IP或域名 |
REMOTE_USER |
用户ssh连接的用户名,要和上面提供私钥的用户相对应 |
SSH_PRIVATE_KEY |
私钥 |
工作流代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| name: docusaurus-deploy on: push: branches: - main
jobs: build-and-deploy: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: use node uses: actions/setup-node@v4 with: node-version: 21 cache: "npm" - name: install run: npm install - name: build run: npm run build - name: ssh deploy uses: easingthemes/ssh-deploy@v5.0.3 with: SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} REMOTE_HOST: ${{ secrets.REMOTE_HOST }} REMOTE_USER: ${{ secrets.REMOTE_USER }} SOURCE: "build" SCRIPT_BEFORE: "mkdir -p ~/docusaurus/build" TARGET: "~/docusaurus/"
|
参考