Skip to main content

Enabling GitHub Actions with MinIO Gateway for NAS storage

You can enable GitHub Actions on GitHub Enterprise Server and use MinIO Gateway for NAS storage to store data generated by workflow runs.

Site administrators can enable GitHub Actions and configure enterprise settings.

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

Prerequisites

Before enabling GitHub Actions, make sure you have completed the following steps:

  • To avoid resource contention on the appliance, we recommend that MinIO be hosted separately from 您的 GitHub Enterprise Server 实例.

  • Create your bucket for storing workflow data. To set up your bucket and access key, see the MinIO documentation. GitHub Actions 需要以下访问密钥的权限才可访问存储桶:

    • s3:PutObject
    • s3:GetObject
    • s3:ListBucketMultipartUploads
    • s3:ListMultipartUploadParts
    • s3:AbortMultipartUpload
    • s3:DeleteObject
    • s3:ListBucket
    • kms:GenerateDataKey(如果已启用 Management Service (KMS) 加密)
  • Review the hardware requirements for GitHub Actions. For more information, see "Getting started with GitHub Actions for GitHub Enterprise Server."

  • TLS must be configured for 您的 GitHub Enterprise Server 实例's domain. For more information, see "Configuring TLS."

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

  • 如果您在 您的 GitHub Enterprise Server 实例上配置了 HTTP 代理服务器 ,则必须添加 localhost127.0.0.1HTTP 代理排除 列表中。 有关更改代理设置的更多信息,请参阅“配置出站 Web 代理服务器”。

Enabling GitHub Actions with MinIO Gateway for NAS storage

  1. SSH 连接到 您的 GitHub Enterprise Server 实例。 更多信息请参阅“访问管理 shell (SSH)。”

    $ ssh -p 122 admin@HOSTNAME
  2. 运行 ghe-actions-precheck 命令来测试 blob 存储配置。 更多信息请参阅“命令行实用程序”。

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

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

  4. 如果您尚未进入“站点管理员”页面,请在左上角单击 Site admin(站点管理员)

    "站点管理员" 链接的屏幕截图

  5. 在左侧边栏中,单击 管理控制台左侧边栏中的 管理控制台 选项卡

  6. 在左侧边栏中,单击 Actions(操作)

    设置侧边栏中的 Actions 选项卡

  7. 选择 Enable GitHub Actions(启用 GitHub Actions)启用 GitHub Actions 的复选框

  8. Under "Artifact & Log Storage", select Amazon S3, and enter your storage bucket's details:

    • AWS Service URL: The URL to your MinIO service. For example, https://my-minio.example:9000.
    • AWS S3 Bucket: The name of your S3 bucket.
    • AWS S3 Access Key and AWS S3 Secret Key: The MINIO_ACCESS_KEY and MINIO_SECRET_KEY used for your MinIO instance. For more information, see the MinIO documentation.

    Radio button for selecting Amazon S3 Storage and fields for MinIO configuration

  9. Under "Artifact & Log Storage", select Force path style. Checkbox to Force path style

  10. 在左侧边栏下,单击 Save settings(保存设置)

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

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

  11. 等待配置运行完毕。

    配置实例

Next steps

After the configuration run has successfully completed, GitHub Actions will be enabled on 您的 GitHub Enterprise Server 实例. For your next steps, such as managing GitHub Actions access permissions and adding self-hosted runners, return to "Getting started with GitHub Actions for GitHub Enterprise Server."