Google Cloud Run 部署 GitHub Action 教程

Google Cloud Run 部署 GitHub Action 教程

deploy-cloudrun A GitHub Action for deploying services to Google Cloud Run. deploy-cloudrun 项目地址: https://gitcode.com/gh_mirrors/de/deploy-cloudrun

1. 项目介绍

deploy-cloudrun 是一个由 Google 提供的 GitHub Action,用于将服务部署到 Google Cloud Run。它支持从容器镜像或源代码部署,并且可以将部署后的服务 URL 作为 GitHub Actions 的输出,以便在后续步骤中使用。

该项目并非 Google 官方支持的产品,也不在 Google Cloud 支持合同的覆盖范围内。如果需要报告错误或请求 Google Cloud 产品的功能,请通过 Google Cloud 支持联系。

2. 项目快速启动

2.1 前提条件

在使用此 GitHub Action 之前,您需要具备以下条件:

  • Google Cloud 凭据,授权访问所需的资源。
  • 使用 Node 20 或更高版本的 GitHub Actions 运行器。

2.2 快速启动步骤

  1. 创建 GitHub Actions 工作流文件

    在您的 GitHub 仓库中,创建一个 .github/workflows/deploy.yml 文件,并添加以下内容:

    name: Deploy to Cloud Run
    
    on:
      push:
        branches:
          - main
    
    jobs:
      deploy:
        runs-on: ubuntu-latest
    
        permissions:
          contents: 'read'
          id-token: 'write'
    
        steps:
          - name: Checkout code
            uses: actions/checkout@v4
    
          - name: Authenticate with Google Cloud
            uses: google-github-actions/auth@v2
            with:
              workload_identity_provider: 'projects/123456789/locations/global/workloadIdentityPools/my-pool/providers/my-provider'
              service_account: '[email protected]'
    
          - name: Deploy to Cloud Run
            id: deploy
            uses: google-github-actions/deploy-cloudrun@v2
            with:
              service: 'hello-cloud-run'
              image: 'gcr.io/cloudrun/hello'
    
          - name: Use output
            run: 'curl "$[[ steps.deploy.outputs.url ]]"
    
  2. 配置 Google Cloud 凭据

    确保您已经配置了 Google Cloud 凭据,并将其与 GitHub Actions 工作流中的 google-github-actions/auth 步骤关联。

  3. 触发部署

    当您将代码推送到 main 分支时,GitHub Actions 将自动触发部署流程,并将服务部署到 Google Cloud Run。

3. 应用案例和最佳实践

3.1 应用案例

  • 持续集成与部署 (CI/CD):使用 deploy-cloudrun GitHub Action 可以轻松实现从代码提交到服务部署的自动化流程。
  • 微服务架构:在微服务架构中,每个服务可以独立部署到 Cloud Run,从而实现快速迭代和扩展。

3.2 最佳实践

  • 使用环境变量:通过 env_varsenv_vars_file 输入,您可以轻松管理环境变量,确保不同环境(如开发、测试、生产)的配置一致性。
  • 版本控制:使用 suffix 输入为每个部署的修订版本添加后缀,便于跟踪和管理不同版本的部署。
  • 安全配置:通过 secrets 输入,您可以将敏感信息(如 API 密钥)安全地传递给 Cloud Run 服务。

4. 典型生态项目

  • Google Cloud Build:用于构建容器镜像,并与 deploy-cloudrun 结合使用,实现从代码到部署的完整流程。
  • GitHub Actions:作为 CI/CD 平台,与 deploy-cloudrun 无缝集成,提供强大的自动化能力。
  • Google Cloud Run:作为无服务器平台,支持快速部署和扩展容器化应用。

通过结合这些生态项目,您可以构建一个高效、可靠的云原生应用部署流程。

deploy-cloudrun A GitHub Action for deploying services to Google Cloud Run. deploy-cloudrun 项目地址: https://gitcode.com/gh_mirrors/de/deploy-cloudrun

猜你喜欢

转载自blog.csdn.net/gitblog_00492/article/details/142582793