Skip to main content
Мы публикуем частые обновления нашей документации, и перевод этой страницы может все еще выполняться. Актуальные сведения см. в документации на английском языке.

Краткое руководство по настройке контейнера хранилища MinIO для пакетов GitHub

Настройте пользовательский контейнер хранилища MinIO для применения с GitHub Packages.

Прежде чем включить и настроить GitHub Packages в экземпляр GitHub Enterprise Server, необходимо подготовить стороннее решение для хранения данных.

MinIO предлагает хранилище объектов с поддержкой API S3 и GitHub Packages на предприятии.

В этом кратком руководстве показано, как настроить MinIO с помощью Docker для использования с GitHub Packages, но у вас кроме Docker существуют другие варианты управления MinIO. Дополнительные сведения о MinIO см. официальные документы MinIO.

1. Выберите режим MinIO для ваших потребностей

Режим MinIOОптимизировано дляТребуемая инфраструктура хранилища
Автономная minIO (на одном узле)Быстрая настройкаН/Д
Кластерное MinIO (также называется распределенный MinIO)Безопасность данныхРаботающие в кластерах серверы серверов хранилищ

Дополнительные сведения о ваших параметрах см. в официальных документах MinIO.

2. Установка, запуск и вход в MinIO

  1. Настройте предпочитаемые переменные среды для MinIO.

    В этих примерах используется MINIO_DIR:

    $ export MINIO_DIR=$(pwd)/minio
    $ mkdir -p $MINIO_DIR
  2. Установите MinIO.

    $ docker pull minio/minio

    Дополнительные сведения см. в официальном руководстве по началу работы с MinIO.

  3. Войдите в MinIO с помощью ключа доступа и секрета MinIO.

    $ export MINIO_ACCESS_KEY=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
    # this one is actually a secret, so careful
    $ export MINIO_SECRET_KEY=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
    $ export MINIO_ACCESS_KEY=$(cat /dev/urandom | LC_CTYPE=C tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
    # this one is actually a secret, so careful
    $ export MINIO_SECRET_KEY=$(cat /dev/urandom | LC_CTYPE=C tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)

    Доступ к ключам MinIO можно получить с помощью переменных среды:

    $ echo $MINIO_ACCESS_KEY
    $ echo $MINIO_SECRET_KEY
  4. Запустите MinIO в выбранном режиме.

    • Запустите MinIO с помощью Docker на одном узле:

      $ docker run -p 9000:9000 \
              -v $MINIO_DIR:/data \
              -e "MINIO_ACCESS_KEY=$MINIO_ACCESS_KEY" \
              -e "MINIO_SECRET_KEY=$MINIO_SECRET_KEY" \
              minio/minio server /data

      Дополнительные сведения см. в кратком руководстве по MinIO Docker.

    • Запустите MinIO с помощью Docker в качестве кластера. В этом развертывании MinIO используется несколько узлов и стирание кода MinIO для наиболее надежной защиты данных. Сведения о запуске MinIO в режиме кластера см. в статье Краткое руководство по распределенной MinIO.

3. Создайте контейнер MinIO для GitHub Packages

  1. Установите клиент MinIO.

    $ docker pull minio/mc
  2. Создайте контейнер с URL-адресом узла, доступ к которому может получить доступ GitHub Enterprise Server.

    • Пример локальных развертываний:

      $ export MC_HOST_minio="http://${MINIO_ACCESS_KEY}:${MINIO_SECRET_KEY} @localhost:9000"
      $ docker run minio/mc BUCKET-NAME

      Этот пример можно использовать для автономной службы MinIO.

    • Пример кластерных развертываний:

      $ export MC_HOST_minio="http://${MINIO_ACCESS_KEY}:${MINIO_SECRET_KEY} @minioclustername.example.com:9000"
      $ docker run minio/mc mb packages

Дальнейшие действия

Чтобы завершить настройку хранилища для GitHub Packages, необходимо скопировать URL-адрес хранилища MinIO:

echo "http://${MINIO_ACCESS_KEY}:${MINIO_SECRET_KEY}@minioclustername.example.com:9000"

Дальнейшие действия см. в разделе Включение пакетов GitHub с использованием MinIO.