Skip to main content

Guia de início rápido para configurar o seu bucket de armazenamento de MinIO para o GitHub Packages

Configure seu bucket de armazenamento do MinIO personalizado para uso com GitHub Packages.

Antes de poder habilitar e configurar GitHub Packages em your GitHub Enterprise Server instance, você deverá preparar sua solução de armazenamento de terceiros.

O MinIO oferece armazenamento de objetos com suporte para a API S3 e GitHub Packages na sua empresa.

Este início rápido mostra como configurar o MinIO usando o Docker para uso com GitHub Packages. No entanto, você tem outras opções para gerenciar o MinIO além do Docker. Para obter mais informações sobre o MinIO, confira a documentação oficial do MinIO.

1. Escolher um modo do MinIO para suas necessidades

Modo MinIOOtimizado paraInfraestrutura de armazenamento necessária
MinIO independente (em um único host)Configuração rápidaN/D
MinIO como um gateway NASNAS (Armazenamento de rede)Dispositivos NAS
MinIO agrupado (também denominado MinIO Distribuído)Segurança de dadosServidores de armazenamento em execução em um cluster

Para obter mais informações sobre suas opções, confira a documentação oficial do MinIO.

Aviso: o MinIO anunciou a remoção de Gateways MinIO. A partir de 1º de junho de 2022, as correções de bug e o suporte para a implementação atual do Gateway do MinIO NAS estarão disponíveis somente para clientes pagos por meio de seu contrato de suporte LTS. Para continuar usando Gateways MinIO com GitHub Packages, recomendamos migrar para o suporte do MinIO LTS. Para saber mais, confira a remoção agendada do Gateway do MinIO para GCS, Azure, HDFS no repositório minio/minio.

Outros modos do MinIO permanecerão disponíveis com suporte padrão.

2. Instalar, executar e entrar no MinIO

  1. Configure suas variáveis de ambiente preferidas para o MinIO.

    Estes exemplos usam MINIO_DIR:

    $ export MINIO_DIR=$(pwd)/minio
    $ mkdir -p $MINIO_DIR
  2. Instalar MinIO.

    $ docker pull minio/minio

    Para obter mais informações, confira o "Guia de Início Rápido do MinIO" oficial.

  3. Efetue o login no MinIO usando sua chave e segredo de acesso do 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)

    Você pode acessar suas chaves do MinIO usando as variáveis de ambiente:

    $ echo $MINIO_ACCESS_KEY
    $ echo $MINIO_SECRET_KEY
  4. Execute o MinIO no modo escolhido.

    • Execute o MinIO usando Docker em um único host:

      $ 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

      Para obter mais informações, confira "Guia de Início Rápido do MinIO no Docker".

    • Executar o MinIO usando Docker como um gateway NAS:

      Esta configuração é útil para implantações em que já existe um NAS que você deseja usar como armazenamento de backup para GitHub Packages.

      $ 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 gateway nas /data
    • Executar o MinIO usando Docker como um cluster. Esta implantação do MinIO usa vários hosts e a codificação de eliminação do MinIO para uma proteção de dados mais forte. Para executar o MinIO em um modo de cluster, confira o "Guia de início rápido do MinIO distribuído".

3. Criar seu bucket do MinIO para o GitHub Packages

  1. Instalar o cliente do MinIO.

    $ docker pull minio/mc
  2. Criar um bucket com uma URL de host que GitHub Enterprise Server pode acessar.

    • Exemplo de implantação local:

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

      Este exemplo pode ser usado para MinIO independente ou MinIO como um gateway NAS.

    • Exemplo de implantações agrupadas:

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

Próximas etapas

Para concluir a configuração de armazenamento para GitHub Packages, você precisará copiar a URL de armazenamento do MinIO:

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

Para ver as próximas etapas, confira "Como habilitar o GitHub Packages com o MinIO".