Almacena paquetes de Apt en Artifact Registry

En esta guía de inicio rápido, se muestra cómo configurar un repositorio privado de Apt de Artifact Registry, agregar un paquete de Debian al repositorio y, luego, instalarlo en una VM de Compute Engine que ejecute un sistema operativo basado en Debian.

Realiza los pasos de esta guía de inicio rápido con Cloud Shell y en la shell de la VM que crees.

Para obtener más información sobre cómo administrar paquetes de Debian, consulta Trabaja con paquetes de Debian.

Antes de comenzar

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  3. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  4. Habilita la API de Artifact Registry.

    Habilita la API

  5. En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  6. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  7. Habilita la API de Artifact Registry.

    Habilita la API

Inicia Cloud Shell

Cloud Shell viene preinstalado con Google Cloud CLI. La gcloud CLI proporciona la interfaz de línea de comandos principal para Google Cloud.

Iniciar Cloud Shell:

  1. Ve a la consola de Google Cloud.

    Consola de Google Cloud

  2. En la barra de herramientas de la consola de Google Cloud, haz clic en Activar Cloud Shell:

Se abrirá una sesión de Cloud Shell dentro de un marco en la parte inferior en la consola. Usarás esta shell para ejecutar los comandos de gcloud a fin de crear una VM y un repositorio.

Crear un repositorio

Crea el repositorio para tus artefactos.

  1. Crea el repositorio:

    Consola

    1. Abre la página Repositorios en la consola de Google Cloud.

      Abrir la página Repositorios

    2. Haz clic en Crear repositorio.

    3. Especifica quickstart-apt-repo como el nombre del repositorio.

    4. Selecciona Apt como el formato.

    5. En Tipo de ubicación, selecciona Región y, luego, elige la ubicación us-central1.

    6. Haz clic en Crear.

    El repositorio se agrega a la lista de repositorios.

    gcloud

    1. En Cloud Shell, ejecuta el siguiente comando para crear un repositorio Apt nuevo en el proyecto actual llamado quickstart-apt-repo en la ubicación us-central1.

      gcloud artifacts repositories create quickstart-apt-repo \
          --repository-format=apt \
          --location=us-central1 \
          --description="Apt repository"
      
    2. Ejecuta el siguiente comando para verificar que se haya creado el repositorio:

      gcloud artifacts repositories list
      

Ahora puedes agregar un paquete al repositorio.

Agrega un paquete al repositorio

Puedes subir un paquete a un repositorio con Google Cloud CLI o puedes importar un paquete almacenado en Cloud Storage. Si compilas paquetes con Cloud Build, la compilación puede almacenar los paquetes en Cloud Storage para que los importes.

Para esta guía de inicio rápido, debes subir un archivo de muestra con el comando gcloud artifacts apt upload.

  1. En Cloud Shell, descarga la hoja de referencia rápida de Apt con el siguiente comando:

    apt download apt-dpkg-ref
    

    Apt descarga la última versión del paquete que está disponible en tus repositorios de Apt configurados.

    Get:1 http://deb.debian.org/debian buster/main amd64 apt-dpkg-ref all 5.3.1+nmu2 [113 kB]
    Fetched 113 kB in 0s (428 kB/s)
    

    Ejecuta ls para obtener el nombre de archivo de la hoja de referencia rápida de Apt. El nombre de archivo es similar a apt-dpkg-ref_5.3.1+nmu2_all.deb.

  2. Para simplificar los comandos de gcloud, configura el repositorio predeterminado como quickstart-apt-repo y la ubicación predeterminada como us-central1. Una vez configurados los valores, no necesitas especificarlos en los comandos de gcloud que requieren un repositorio o una ubicación.

    Para configurar el repositorio, ejecuta el siguiente comando:

    gcloud config set artifacts/repository quickstart-apt-repo
    

    Para configurar la ubicación, ejecuta el siguiente comando:

    gcloud config set artifacts/location us-central1
    

    Para obtener más información sobre estos comandos, consulta la documentación de establecimiento de la configuración de gcloud.

  3. Ejecuta gcloud artifacts apt upload para subir el paquete al repositorio:

    gcloud artifacts apt upload quickstart-apt-repo \
        --source=FILE_NAME
    

    Reemplaza FILE_NAME por la ruta de acceso a la hoja de referencia rápida de Apt.

Visualiza el paquete en el repositorio

Verifica que tu paquete se agregó al repositorio.

Consola

  1. Abre la página Repositorios en la consola de Google Cloud.

    Abrir la página Repositorios

  2. En la lista de repositorios, haz clic en el repositorio quickstart-apt-repo.

    En la página Paquetes, se enumeran los paquetes del repositorio.

gcloud

Para mostrar una lista de los paquetes en el repositorio quickstart-apt-repo, ejecuta el siguiente comando:

 gcloud artifacts packages list

Para ver las versiones de un paquete en quickstart-apt-repo, ejecuta el siguiente comando:

gcloud artifacts versions list --package=apt-dpkg-ref

Cómo crear una VM

Crea una VM de Compute Engine nueva en la que instalarás el paquete de muestra.

En Cloud Shell, ejecuta el siguiente comando para crear una instancia de VM llamada quickstart-apt-vm:

gcloud compute instances create quickstart-apt-vm \
    --image-family=debian-10 \
    --image-project=debian-cloud \
    --scopes=cloud-platform

De forma predeterminada, la VM no tiene los permisos de acceso necesarios para trabajar con el repositorio. La marca --scopes establece el permiso de acceso para la VM en cloud-platform.

Cómo configurar el administrador de paquetes

Para instalar un paquete en la VM, agrega el repositorio que creaste al archivo de configuración de Apt que define los repositorios de paquetes.

  1. Vaya a la página Instancias de VM.

    Abrir la página Instancias de VM

  2. En la fila de tu VM, haz clic en SSH. Se abrirá una ventana nueva con una sesión de terminal en la VM.

  3. Ejecuta gcloud init para inicializar Google Cloud CLI en tu VM.

  4. Actualizar departamento:

    sudo apt update
    
  5. Instala el auxiliar de credenciales de Apt en la VM para permitir que Apt realice la autenticación:

    sudo apt install apt-transport-artifact-registry
    
  6. Configura tu VM para acceder a los paquetes de Artifact Registry mediante el siguiente comando:

    echo 'deb ar+https://us-central1-apt.pkg.dev/projects/PROJECT quickstart-apt-repo main' | sudo tee -a  /etc/apt/sources.list.d/artifact-registry.list
    

    Reemplaza PROJECT por el ID del proyecto de Google Cloud.

Instale el paquete

Instala el paquete que agregaste al repositorio.

  1. Actualiza la lista de paquetes disponibles:

    sudo apt update
    
  2. Instala el paquete en tu repositorio.

    sudo apt install apt-dpkg-ref/quickstart-apt-repo
    

    La información de instalación que se muestra se parece al siguiente ejemplo:

    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    Selected version '5.3.1+nmu2' (Debian:10.7/stable, namespaces/my-repo/repositories/quickstart-apt-repo:quickstart
    -apt-repo [all]) for 'apt-dpkg-ref'
    The following NEW packages will be installed:
      apt-dpkg-ref
    0 upgraded, 1 newly installed, 0 to remove and 3 not upgraded.
    Need to get 113 kB of archives.
    After this operation, 128 kB of additional disk space will be used.
    Get:1 http://deb.debian.org/debian buster/main amd64 apt-dpkg-ref all 5.3.1+nmu2 [113 kB]
    Fetched 113 kB in 0s (693 kB/s)
    Selecting previously unselected package apt-dpkg-ref.
    (Reading database ... 39506 files and directories currently installed.)
    Preparing to unpack .../apt-dpkg-ref_5.3.1+nmu2_all.deb ...
    Unpacking apt-dpkg-ref (5.3.1+nmu2) ...
    Setting up apt-dpkg-ref (5.3.1+nmu2) ...
    

Limpia

Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que se usaron en esta página.

Antes de quitar el repositorio, asegúrate de que los paquetes que quieres conservar estén disponibles en otra ubicación.

Para borrar el repositorio, haz lo siguiente:

Consola

  1. Abre la página Repositorios en la consola de Google Cloud.

    Abrir la página repositorios

  2. En la lista de repositorios, selecciona el repositorio quickstart-apt-repo.

  3. Haz clic en Borrar.

gcloud

  1. Para borrar el repositorio quickstart-apt-repo, ejecuta el siguiente comando:

    gcloud artifacts repositories delete quickstart-apt-repo
    
  2. Si deseas quitar la configuración predeterminada de la ubicación y del repositorio que estableciste para la configuración activa de gcloud, ejecuta los siguientes comandos:

    gcloud config unset artifacts/repository
    gcloud config unset artifacts/location
    

Para borrar la VM que creaste, ejecuta el siguiente comando:

gcloud compute instances delete quickstart-apt-vm

¿Qué sigue?