Skip to main content

使用 MinIO Gateway for NAS 存储启用 GitHub Actions

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

Who can use this feature

Site administrators can enable GitHub Actions and configure enterprise settings.

警告:MinIO 已宣布删除 MinIO 网关。 从 2022 年 6 月 1 日起,当前 MinIO NAS 网关实施的支持和 Bug 修复将仅通过其 LTS 支持合同提供给付费客户。 如果要继续使用 MinIO 网关与 GitHub Actions,我们建议转向 MinIO LTS 支持。 有关详细信息,请参阅计划删除 minio/minio 存储库中的适用于 GCS、Azure 和 HDFS 的 MinIO 网格

先决条件

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

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

  • 创建用于存储工作流数据的桶。 GitHub Actions 需要以下访问密钥的权限才可访问存储桶:

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

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

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

  • 如果在 your GitHub Enterprise Server instance 上配置了 HTTP 代理服务器:

    • 必须将 localhost127.0.0.1 添加到“HTTP 代理排除”列表。
    • 如果 BYOS 桶不可路由,则还必须将桶的 URL 添加到排除列表。

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

使用 MinIO Gateway for NAS 存储启用 GitHub Actions

  1. SSH 连接到 your GitHub Enterprise Server instance。 如果实例包含多个节点,例如,如果配置了高可用性或异地复制,则通过 SSH 连接到主节点。 如果使用群集,则可以通过 SSH 连接到任何节点。 有关 SSH 访问的详细信息,请参阅“访问管理 shell (SSH)”。

    $ ssh -p 122 admin@HOSTNAME
    1. 运行 `ghe-actions-precheck` 命令以测试 Blob 存储配置。 有关详细信息,请参阅“[命令行实用工具](/admin/configuration/configuring-your-enterprise/command-line-utilities#ghe-actions-precheck)”。 1. 从 GitHub Enterprise Server 上的管理帐户任意页面的右上角,单击

    用于访问站点管理员设置的火箭图标的屏幕截图

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

    “站点管理员”链接的屏幕截图 1. 在左侧边栏中,单击“管理控制台”。 左侧边栏中的 管理控制台 选项卡 1. 在左侧边栏中,单击“操作”。

    设置侧边栏中的 Actions 选项卡 1. 选择“启用 GitHub Actions”。 “启用 GitHub Actions”复选框

  3. 在“项目和日志存储”下,选择“Amazon S3”,然后输入存储桶的详细信息:

    • AWS 服务 URL:MinIO 服务的 URL。 例如 https://my-minio.example:9000
    • AWS S3 存储桶:S3 存储桶的名称。
    • AWS S3 访问密钥和 AWS S3 密钥:用于 MinIO 实例的 MINIO_ACCESS_KEYMINIO_SECRET_KEY

    用于选择 Amazon S3 存储的单选按钮和用于 MinIO 配置的字段

  4. 在“项目和日志存储”下,选择“强制路径样式”。 “强制路径样式”的复选框 1. 在左侧边栏下,单击“保存设置”。

    管理控制台 中的“保存设置”按钮的屏幕截图

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

  5. 等待配置运行完毕。

    配置实例

后续步骤

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