Configura VM para instalar paquetes de Debian

En esta página, se describe cómo configurar VM para instalar paquetes de Debian desde un repositorio de Apt de Artifact Registry.

Antes de comenzar

Si el repositorio de Apt de destino no existe, crea un repositorio nuevo. Puedes crear un repositorio privado o uno público que no requiera autenticación.

Prepara una VM para acceder a un repositorio de Apt

Repositorio privado

  1. Elige la cuenta de servicio que usarás para otorgar acceso.

    • Para las VM de Compute Engine, esta podría ser la cuenta de servicio predeterminada.
    • En otras VM, crea o elige una cuenta de servicio para actuar en nombre de tu VM. Necesitarás la ubicación del archivo de claves de la cuenta de servicio para configurar la VM. Puedes ver y crear claves para las cuentas existentes en la página Cuentas de servicio.
  2. Otorga permisos de acceso al repositorio a tu cuenta de servicio.

  3. Prepara la VM para acceder al repositorio.

    VM de Compute Engine

    VM de Debian

    1. Asigna permisos de acceso a la API cloud-platform a la VM. Para obtener información sobre cómo configurar niveles de acceso, consulta Cambia la cuenta de servicio y los niveles de acceso para una instancia.

    2. Instala las claves de firma del repositorio de Apt con el siguiente comando:

      curl https://LOCATION-apt.pkg.dev/doc/repo-signing-key.gpg | sudo apt-key add -
      

      Reemplaza LOCATION por la ubicación del repositorio.

    3. Actualiza Apt con el siguiente comando:

      sudo apt update
      
    4. Instala el paquete apt-transport-artifact-registry en la VM:

      sudo apt install apt-transport-artifact-registry
      

    VM de Ubuntu

    1. Asigna permisos de acceso a la API cloud-platform a la VM. Para obtener información sobre cómo configurar niveles de acceso, consulta Cambia la cuenta de servicio y los niveles de acceso para una instancia.

    2. Instala las claves de firma del repositorio de Apt con el siguiente comando:

      curl https://LOCATION-apt.pkg.dev/doc/repo-signing-key.gpg | sudo apt-key add - && curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
      

      Reemplaza LOCATION por la ubicación del repositorio.

    3. Configura tu VM para que acceda a los paquetes de Artifact Registry mediante el siguiente comando:

      echo 'deb http://packages.cloud.google.com/apt apt-transport-artifact-registry-stable main' | sudo tee -a /etc/apt/sources.list.d/artifact-registry.list
      
    4. Actualiza Apt con el siguiente comando:

      sudo apt update
      
    5. Instala el paquete apt-transport-artifact-registry en la VM:

      sudo apt install apt-transport-artifact-registry
      

    Otra VM

    1. Instala las claves de firma del repositorio de Apt con el siguiente comando:

      curl https://LOCATION-apt.pkg.dev/doc/repo-signing-key.gpg | sudo apt-key add - && curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
      

      Reemplaza LOCATION por la ubicación del repositorio.

    2. Configura tu VM para que acceda a los paquetes de Artifact Registry mediante el siguiente comando:

      echo 'deb http://packages.cloud.google.com/apt apt-transport-artifact-registry-stable main' | sudo tee -a /etc/apt/sources.list.d/artifact-registry.list
      
    3. Actualiza Apt con el siguiente comando:

      sudo apt update
      
    4. Instala el paquete apt-transport-artifact-registry en la VM:

      sudo apt install apt-transport-artifact-registry
      
    5. Busca la línea #Service-Account-JSON "/path/to/creds.json"; en el archivo /etc/apt/apt.conf.d/90artifact-registry y, luego, quita el comentario de la línea y agrega la ruta de acceso a la clave de la cuenta de servicio.

      Entrada del archivo de configuración:

      Service-Account-JSON  "PATH_TO_SERVICE_ACCOUNT_KEY";
      

      Reemplaza PATH_TO_SERVICE_ACCOUNT_KEY por la ruta de acceso al archivo JSON de la clave de tu cuenta de servicio.

Repositorio público

  1. Configura el acceso público al repositorio.

  2. Si configuras una VM fuera de Google Cloud, prepara la máquina para acceder al repositorio. Si configuras una VM de Compute Engine, continúa con el paso siguiente.

    Instala la clave de verificación de firma pública con el siguiente comando:

    curl https://LOCATION-apt.pkg.dev/doc/repo-signing-key.gpg | sudo apt-key add -
    

    Reemplaza LOCATION por la ubicación del repositorio.

  3. Actualiza Apt con el siguiente comando:

    sudo apt update
    

Configura una VM para acceder a un repositorio de Apt

Repositorio privado

  1. Configura Apt para que recupere paquetes de tu repositorio mediante el siguiente comando:

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

    Reemplaza lo siguiente:

    • LOCATION es una ubicación regional o multirregional.
    • PROJECT es el ID del proyecto de Google Cloud.
    • REPOSITORY es el nombre del repositorio de Artifact Registry.

    Por ejemplo, para instalar paquetes desde el repositorio my-repo en el proyecto my-project y en la ubicación us-central1, agrega la siguiente línea:

    deb ar+https://us-central1-apt.pkg.dev/projects/my-project my-repo main
    
  2. Actualiza las fuentes del repositorio con el siguiente comando:

    sudo apt update
    

Repositorio público

  1. Configura Apt para que recupere paquetes de tu repositorio mediante el siguiente comando:

    echo 'deb https://LOCATION-apt.pkg.dev/projects/PROJECT REPOSITORY main' | sudo tee -a /etc/apt/sources.list.d/artifact-registry.list
    

    Reemplaza lo siguiente:

    • LOCATION es una ubicación regional o multirregional.
    • PROJECT es el ID del proyecto de Google Cloud.
    • REPOSITORY es el nombre del repositorio de Artifact Registry.

    Por ejemplo, para instalar paquetes desde el repositorio my-repo en el proyecto my-project y en la ubicación us-central1, agrega la siguiente línea:

    deb https://us-central1-apt.pkg.dev/projects/my-project my-repo main
    
  2. Actualiza las fuentes del repositorio con el siguiente comando:

    sudo apt update
    

Apt ahora puede conectarse al repositorio.

Si creas repositorios adicionales de Apt, puedes agregarlos al archivo artifact-registry.list y, luego, volver a ejecutar sudo apt update para actualizar las fuentes del repositorio.

¿Qué sigue?