Almacena paquetes de Apt en Artifact Registry

En esta guía de inicio rápido, se muestra cómo configurar un repositorio de Apt de Artifact Registry privado, agregar un paquete 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, la VM que crearás en esta guía de inicio rápido.

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

Antes de comenzar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Artifact Registry API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Artifact Registry API.

    Enable the API

Inicia Cloud Shell

Cloud Shell ya viene instalado con Google Cloud CLI. gcloud CLI proporciona la línea de comandos principal de 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 y crear una VM y un en un repositorio de confianza.

Crea un repositorio

Crea el repositorio para tus artefactos.

  1. Crea el repositorio:

    Console

    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 Departamento como el formato.

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

    6. Haga clic en Crear.

    El repositorio se agrega a la lista de repositorios.

    gcloud

    1. En Cloud Shell, ejecuta el siguiente comando para crear un nuevo repositorio de Apt 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 importar un paquete que se almacena en Cloud Storage. Si compilas paquetes usando Cloud Build, la compilación puede almacenar los paquetes en Cloud Storage por ti para importar.

En esta guía de inicio rápido, subirás 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 versión más reciente del paquete 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 del 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 siguiente:

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

    Reemplaza FILE_NAME por la ruta de acceso al apartado rápido. como hoja de referencia.

Visualiza el paquete en el repositorio

Verifica que tu paquete se haya agregado al repositorio.

Console

  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 generar 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 comando:

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

Crea una VM

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

En Cloud Shell, ejecuta el siguiente comando para crear una instancia de VM llamado 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 de trabajo con el repositorio. La marca --scopes establece el permiso de acceso para la VM a cloud-platform.

Configura 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 repositorios de paquetes.

  1. Ve 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 terminal en la VM.

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

  4. Actualiza Apt:

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

    sudo apt install apt-transport-artifact-registry
    
  6. Configura tu VM para acceder a los paquetes de Artifact Registry con las siguientes opciones: :

    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 es similar 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 usaste 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:

Console

  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?