Antes de poder habilitar e configurar GitHub Packages em sua instância do GitHub Enterprise Server, 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 MinIO | Otimizado para | Infraestrutura de armazenamento necessária |
---|---|---|
MinIO independente (em um único host) | Configuração rápida | Não aplicável |
MinIO agrupado (também denominado MinIO Distribuído) | Segurança de dados | Servidores de armazenamento em execução em um cluster |
Para obter mais informações sobre suas opções, confira a documentação oficial do MinIO.
2. Instalar, executar e entrar no MinIO
-
Configure suas variáveis de ambiente preferidas para o MinIO.
Estes exemplos usam
MINIO_DIR
:export MINIO_DIR=$(pwd)/minio mkdir -p $MINIO_DIR
-
Instalar MinIO.
docker pull minio/minio
Para obter mais informações, confira o Guia de Início Rápido do MinIO oficial.
-
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
-
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 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
-
Instalar o cliente do MinIO.
docker pull minio/mc
-
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 o MinIO autônomo.
-
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 Habilitar o GitHub Packeges com o MinIO.