使用 GitHub Actions 在代码更新时自动部署代码到 VPS

本文详细介绍了如何使用GitHubActions创建工作流,配置SSH密钥,以实现代码自动部署到VPS。步骤包括创建SSH密钥对,添加到GitHubSecrets,以及编写workflow文件以在代码推送时执行部署操作。
摘要由CSDN通过智能技术生成

本人github

使用 GitHub Actions 自动部署代码到 VPS 主要包括创建一个 workflow 文件,该文件描述了触发条件和部署步骤。下面是一个基本的示例,展示了如何配置 GitHub Actions 将代码自动部署到 VPS:

  1. 创建 SSH 密钥

    • 在你的本地机器上,使用 ssh-keygen 创建一个新的 SSH 密钥对。不要为此密钥对设置密码。
    • 将公钥(.pub 文件)添加到你的 VPS 的 ~/.ssh/authorized_keys 文件中。
    • 将私钥添加到你的 GitHub 仓库的 Secrets 中。例如,将其命名为 DEPLOY_SSH_KEY
  2. 创建 GitHub Actions Workflow 文件

    • 在你的 GitHub 仓库中创建一个新的 workflow 文件,例如 .github/workflows/deploy.yml
    • 在该文件中,定义一个新的 workflow,如下所示:
name: Deploy to VPS

on:
  push:
    branches:
      - main  # 或者你想要部署的分支

jobs:
  deploy:
    runs-on: ubuntu-latest

    steps:
    - name: Checkout code
      uses: actions/checkout@v2

    - name: Deploy to VPS
      env:
        DEPLOY_SSH_KEY: ${{ secrets.DEPLOY_SSH_KEY }}
        HOST: your-vps-ip-or-domain
        USER: your-vps-username
        PORT: your-vps-ssh-port  # 例如 22
      run: |
        echo "$DEPLOY_SSH_KEY" > deploy_key.pem
        chmod 600 deploy_key.pem
        ssh -o StrictHostKeyChecking=no -i deploy_key.pem $USER@$HOST -p $PORT "cd /path/to/your/project; git pull"
        rm -f deploy_key.pem
  1. 配置你的 VPS

    • 确保你的 VPS 上的 git 仓库已经克隆,并且配置为从你的 GitHub 仓库中拉取代码。
  2. 推送代码

    • 将你的 GitHub Actions workflow 文件推送到你的 GitHub 仓库。
    • 以后每当你向 main 分支(或你在 workflow 文件中指定的其他分支)推送代码时,GitHub Actions 将自动将代码部署到你的 VPS。

这只是一个非常基本的示例,你可能需要根据你的具体情况和需求进行调整。例如,你可能想要添加额外的步骤来运行测试、构建你的项目、或者重启你的服务器上的服务。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我想要身体健康

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值