Skip to main content

Enabling GitHub Packages with MinIO

Set up GitHub Packages with MinIO as your external storage.

Warnings:

  • It is critical that you set the restrictive access policies you need for your storage bucket, because GitHub does not apply specific object permissions or additional access control lists (ACLs) to your storage bucket configuration. For example, if you make your bucket public, data in the bucket will be accessible on the public internet. If restrictions by IP address have been set up, please include IP addresses for 你的 GitHub Enterprise Server 实例 and the end users who will be using the 你的 GitHub Enterprise Server 实例.
  • We recommend using a dedicated bucket for GitHub Packages, separate from the bucket you use for GitHub Actions storage.
  • Make sure to configure the bucket you'll want to use in the future. We do not recommend changing your storage after you start using GitHub Packages.
  • We recommend configuring the TLS for the bucket to avoid possible issues with Package Registry, for example, downloading from NuGet Registry.

Prerequisites

Before you can enable and configure GitHub Packages on 你的 GitHub Enterprise Server 实例, you need to prepare your MinIO storage bucket. To help you quickly set up a MinIO bucket and navigate MinIO's customization options, see the "Quickstart for configuring your MinIO storage bucket for GitHub Packages."

Ensure your MinIO external storage access key ID and secret have these permissions:

  • s3:PutObject
  • s3:GetObject
  • s3:ListBucketMultipartUploads
  • s3:ListMultipartUploadParts
  • s3:AbortMultipartUpload
  • s3:DeleteObject
  • s3:ListBucket

Enabling GitHub Packages with MinIO external storage

Although MinIO does not currently appear in the user interface under "Package Storage", MinIO is still supported by GitHub Packages on GitHub Enterprise. Also, note that MinIO's object storage is compatible with the S3 API and you can enter MinIO's bucket details in place of AWS S3 details.

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

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

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

  4. 在左侧边栏中,单击“包”。

  5. 在“GitHub Packages”下选择“启用 GitHub Packages”复选框。

  6. Under "Packages Storage", select Amazon S3.

  7. Enter your MinIO storage bucket's details in the AWS storage settings.

    • AWS Service URL: The hosting URL for your MinIO bucket.
    • AWS S3 Bucket: The name of your S3-compatible MinIO bucket dedicated to GitHub Packages.
    • AWS S3 Access Key and AWS S3 Secret Key: Enter the MinIO access key ID and secret key to access your bucket.
  8. 在“设置”边栏下,单击“保存设置”。

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

  9. 等待配置运行完毕。

Next steps

下一步是,你可自定义你想要在 你的 GitHub Enterprise Server 实例 上提供给最终用户的包生态系统。 有关详细信息,请参阅“Configuring package ecosystem support for your enterprise”。

有关在 GitHub 上使用 GitHub Packages 的概述,请参阅“Getting started with GitHub Packages for your enterprise”。