Esta versión de GitHub Enterprise se discontinuó el 2021-09-23. No se realizarán lanzamientos de patch, ni siquiera para problemas de seguridad críticos. Para obtener un mejor desempeño, más seguridad y nuevas características, actualiza a la última versión de GitHub Enterprise. Para obtener ayuda con la actualización, contacta al soporte de GitHub Enterprise.

Guía de inicio rápido para configurar tu bucket de almacenamiento de MinIO para GitHub Packages

Configura tu bucket de almacenamiento de MinIO personalizado para utilizarlo con Registro del paquete de GitHub.

Nota: El Registro del paquete de GitHub se encuentra actualmente en beta para GitHub Enterprise Server 2.22. Para unirte al beta de tu instancia de GitHub Enterprise Server, utiliza el formato de registro.

Antes de que puedas habilitar y configurar el Registro del paquete de GitHub en tu instancia de servidor de GitHub Enterprise, deberás preparar tu solución de almacenamiento externo.

MinIO ofrece almacenamiento de objetos con soporte para la API de S3 y para Registro del paquete de GitHub en tu empresa.

Esta guía de inicio rápido te muestra cómo configurar MinIO utilizando Docker para usarlo con el Registro del paquete de GitHub, peto tienes otras opciones para administrar MinIO aparte de Docker. Para obtener más información acerca de MinIO, consulta los documentos oficiales de MinIO.

1. Elige un modo de MinIO de acuerdo con tus necesidades

Modo de MinIOOptimizado paraInfraestructura de almacenamiento requerida
MinIO Autónomo (en un solo host)Configuración rápidaN/A
MinIO como una puerta de enlace de NASNAS (Almacenamiento adjunto a la red, por sus siglas en inglés)Dispositivos NAS
MinIO Agrupado (también conocido como MinIO distribuído)Seguridad de datosServidores de almacenamiento que se ejecutan en un agrupamiento

Para obtener más información acerca las opciones que tienes, consulta los documentos oficiales de MinIO.

2. Instala, ejecuta e inicia sesión en MinIO

  1. Configura tus variables de ambiente preferidas para MinIO.

    Estos ejemplos utilizan MINIO_DIR:

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

    $ docker pull minio/minio

    Para obtener más información, consulta la Guía de inicio rápido oficial de MinIO".

  3. Inicia sesión en MinIO utilizando tu llave de acceso y secreto de 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)

    Puedes acceder a tus llaves de MinIO utilizando las variables de ambiente:

    $ echo $MINIO_ACCESS_KEY
    $ echo $MINIO_SECRET_KEY
  4. Ejecuta MinIO en el modo que hayas elegido.

    • Ejecuta MinIO utilizando Docker en un host único:

      $ 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 obtener más información, consulta la "Guía de inicio rápido de Docker para MinIO".

    • Ejecuta MinIO utilizando Docker como una puerta de enlace de NAS:

      Esta configuración es útil para los despliegues en donde ya exista una NAS que quieras utilizar como respaldo de almacenamiento para el Registro del paquete de GitHub.

      $ 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

      Para obtener más información, consulta la sección "Puerta de enlace de MinIO para NAS".

    • Ejecuta MinIO utilizando Docker como un agrupamiento. Este despliegue de MinIO utiliza diversos hosts y el código de borrado de MinIO para tener la mayor protección de los datos. Para ejecutar MinIO en modo de agrupamiento, consulta la "Guía Rápida para MinIO Distribuído.

3. Crea tu bucket de MinIO para Registro del paquete de GitHub

  1. Instala el cliente de MinIO.

    $ docker pull minio/mc
  2. Crea un bucket con una URL de host a la que GitHub Enterprise Server pueda acceder.

    • Ejemplos de despliegues locales:

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

      Este ejemplo puede utilizarse para la versión autónoma de MinIO o para MinIO como puerta de enlace de NAS.

    • Ejemplo de despliegues en agrupamiento:

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

Pasos siguientes

Para terminar de configurar el almacenamiento para el Registro del paquete de GitHub, necesitarás copiar la URL de almacenamiento de MinIO:

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

Para los pasos siguientes, consulta la sección "Habilitar el Registro del paquete de GitHub con MinIO".