阿里云部署
319 字
2 分钟
阿里云部署
这段时间搞了个阿里云的服务器,打算把个人的博客网站跟明信片网站部署到服务器上,这个项目的逻辑就是直接把dist文件夹里的东西放到阿里云就行,然后整个逻辑就是,上传到github之后,通过GitHub Action自动构建dist文件夹,然后通过密钥连接阿里云,上传至对应文件夹
name: Deploy to Aliyun Server
on: push: branches: [ master ] workflow_dispatch:
concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true
permissions: contents: read
jobs: build-and-deploy: runs-on: ubuntu-latest env: FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true steps: - name: Checkout repository uses: actions/checkout@v4
- name: Setup Node.js uses: actions/setup-node@v4 with: node-version: '22'
- name: Setup pnpm uses: pnpm/action-setup@v4 with: version: 9.14.4 run_install: false
- name: Install dependencies run: pnpm install --frozen-lockfile
- name: Build site run: pnpm run build
- name: Create .nojekyll file run: touch dist/.nojekyll
- name: Deploy to Aliyun via SSH uses: appleboy/ssh-action@v1 with: host: ${{ secrets.ALIYUN_HOST }} username: ${{ secrets.ALIYUN_USERNAME }} key: ${{ secrets.ALIYUN_KEY }} port: 22 script: | # 清空目标目录(保留宝塔配置文件) find /www/wwwroot/www.wonique.space -mindepth 1 ! -name '.user.ini' -exec rm -rf {} +
- name: Upload dist files via SCP uses: appleboy/scp-action@v0.1.7 with: host: ${{ secrets.ALIYUN_HOST }} username: ${{ secrets.ALIYUN_USERNAME }} key: ${{ secrets.ALIYUN_KEY }} port: 22 source: "dist/*" target: "/www/wwwroot/www.wonique.space" strip_components: 1同时要在github上配置三个Repository secrets
ALIYUN_HOST: 服务器公网IP
ALIYUN_USERNAME: 服务器用户名
ALIYUN_KEY:服务器私钥
同时公钥追加至至服务器~/.ssh/authorized文件中
文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!