使用GitHub Action在服务器同步Hexo博客信息
发表于|更新于
|总字数:274|阅读时长:1分钟|浏览量:
本文章只是记录一下步骤,如果你想看更加详细的文章,可以参考以下内容:
新建GitHub Action
在.github/workflows
目录下新建一个deploy.yml
文件,内容如下:
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
| name: deploy on: push: branches: - main jobs: build: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Set up Node uses: actions/setup-node@v4 with: cache: 'npm' - name: Install dependencies run: | npm install -g hexo-cli npm install hexo-renderer-pug hexo-renderer-stylus hexo-wordcount npm install - name: Build run: | hexo generate - name: Deploy uses: easingthemes/ssh-deploy@main env: SSH_PRIVATE_KEY: ${{ secrets.ACCESS_TOKEN }} ARGS: "-avz --delete" SOURCE: "public/" REMOTE_HOST: ${{ secrets.REMOTE_HOST }} REMOTE_USER: ${{ secrets.REMOTE_USER }} TARGET: ${{ secrets.TARGET }}
|
生成RSA密钥对
注意不要设置密码:
1
| ssh-keygen -m PEM -t rsa -b 4096
|
把生成的公钥加入到authorized_keys
中。
配置GitHub Secrets
生成RSA密钥对(注意不要设置密码),并上传私钥到GitHub的Secrets中,名称为ACCESS_TOKEN
。
设置ACCESS_TOKEN
、REMOTE_HOST
、REMOTE_USER
、TARGET
的值,分别为私钥、服务器地址、用户名、目标目录。
把你的仓库推送到GitHub
这一步就不用多说了。