Skip to main content

使用 MinIO 存储启用 GitHub Actions

可以在 GitHub Enterprise Server 上启用 GitHub Actions,并使用 MinIO 存储来存储工作流运行生成的数据。

谁可以使用此功能?

Site administrators can enable GitHub Actions and configure enterprise settings.

关于 GitHub Actions

的外部存储

GitHub Actions 使用外部 blob 存储来存储工作流运行生成的数据。 存储的数据包括工作流日志、缓存和用户上传的生成工件。有关详细信息,请参阅“GitHub Actions for GitHub Enterprise Server 使用入门”。

先决条件

在启用 GitHub Actions 之前,请确保您已完成以下步骤:

  • 创建 MinIO 存储桶,用于存储工作流运行生成的数据。 有关安装和配置 MinIO 的详细信息,请参阅 MinIO 文档中的“MinIO 高性能对象存储”和“mc mb”。

    为避免设备上的资源争用,我们建议将 MinIO 与 你的 GitHub Enterprise Server 实例 分开托管。

    GitHub Actions 需要以下访问密钥的权限才可访问存储桶:

    • s3:PutObject
    • s3:GetObject
    • s3:ListBucketMultipartUploads
    • s3:ListMultipartUploadParts
    • s3:AbortMultipartUpload
    • s3:DeleteObject
    • s3:ListBucket
    • kms:GenerateDataKey(如果已启用密钥管理服务 (KMS) 加密)
  • 查看 GitHub Actions 的硬件要求。 有关详细信息,请参阅“GitHub Actions for GitHub Enterprise Server 使用入门”。

  • 必须为 GitHub Enterprise Server 的域配置 TLS。 有关详细信息,请参阅“配置 TLS”。

    Note

    我们强烈建议您在 GitHub Enterprise Server 上配置 TLS,并有信任的机构签名的证书。 虽然自签名证书可以工作,但自托管的运行器需要额外的配置,不推荐用于生产环境。

  • 如果在 GitHub 上配置了 HTTP 代理服务器

  • 必须将 .localhost127.0.0.1::1 添加到“HTTP 代理排除”**** 列表(以此顺序)。

  • 如果外部存储位置不可路由,则还必须将外部存储 URL 添加到排除列表中。

有关更改代理设置的详细信息,请参阅“配置出站 Web 代理服务器”。

使用 MinIO 存储启用 GitHub Actions

  1. 在 GitHub Enterprise Server 上的管理帐户中,在任一页面的右上角,单击

  2. 如果你尚未在“站点管理员”页上,请在左上角单击“站点管理员”。

  3. 在“ 站点管理”边栏中,单击“管理控制台”。

  4. 在“设置”边栏中,单击“操作”。

  5. 在“GitHub Actions”下,选择“启用 GitHub Actions”。

  6. 在“项目和日志存储”下的“Amazon S3”旁,单击“设置”。

  7. 在“身份验证”下,选择“基于凭据”,然后输入存储桶的详细信息:

    Note

    对于 MinIO,不能使用 OpenID Connect (OIDC) 身份验证。 必须使用基于凭据的身份验证。

    • AWS 服务 URL:MinIO 服务的 URL。 例如 https://my-minio.example:9000
    • AWS S3 存储桶:S3 存储桶的名称。
    • AWS S3 访问密钥和 AWS S3 密钥: 用于 MinIO 实例的 MINIO_ACCESS_KEYMINIO_SECRET_KEY
  8. 在“项目和日志存储”下,选择“强制路径样式”。

  9. 单击“测试存储设置”按钮验证存储设置。

    如果在验证存储设置时出现任何错误,请检查存储提供程序设置并重试。

  10. 在“设置”边栏下,单击“保存设置”。

    Note

    保存 管理控制台 中的设置会重启系统服务,这可能会导致用户可察觉的停机时间。

  11. 等待配置运行完毕。

后续步骤

配置运行成功完成后,GitHub Actions 将在 GitHub 上启用。 对于后续步骤,例如管理 GitHub Actions 访问权限和添加自托管运行器,请返回到“GitHub Actions for GitHub Enterprise Server 使用入门”。