Archiviazione dei pacchetti RPM in Artifact Registry

Questa guida rapida mostra come configurare un repository Yum privato di Artifact Registry, aggiungere un pacchetto RPM al repository e installare il pacchetto su una VM Compute Engine che esegue il sistema operativo CentOS 7. Per scoprire come configurare i repository Yum che utilizzano DNF, consulta Configurazione delle VM per installare pacchetti RPM.

Per scoprire di più sulla gestione dei pacchetti RPM, consulta Utilizzo dei pacchetti RPM.

Prima di iniziare

  1. In the Cloud de Confiance console, on the project selector page, select or create a Cloud de Confiance project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. Verify that billing is enabled for your Cloud de Confiance project.

  3. Enable the Artifact Registry API.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per creare e gestire i repository di pacchetti Yum di Artifact Registry, chiedi all'amministratore di concederti il ruolo IAM Amministratore di Artifact Registry (roles/artifactregistry.admin) nel tuo progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Installa gcloud CLI

  1. Installa e inizializza Google Cloud CLI se non è già installato. Per un'installazione esistente, aggiorna i componenti di Google Cloud CLI con il comando:

    gcloud components update
    

    Per verificare la versione di gcloud CLI, esegui il comando:

    gcloud version
    

Crea un repository

Crea il repository per gli artefatti.

  1. Crea il repository:

    Console

    1. Apri la pagina Repository nella Cloud de Confiance console.

      Apri la pagina Repositori

    2. Fai clic su Crea repository.

    3. Specifica quickstart-yum-repo come nome del repository.

    4. Seleziona Yum come formato.

    5. In Tipo di località, seleziona Regione, quindi scegli la località u-france-east1.

    6. Fai clic su Crea.

    Il repository viene aggiunto all'elenco dei repository.

    gcloud

    1. In Cloud Shell, esegui il comando seguente per creare un nuovo repository Yum nel progetto attuale denominato quickstart-yum-repo nella località u-france-east1.

      gcloud artifacts repositories create quickstart-yum-repo \
          --repository-format=yum \
          --location=u-france-east1 \
          --description="Yum repository"
      
    2. Esegui questo comando per verificare che il repository sia stato creato:

      gcloud artifacts repositories list
      

Ora puoi aggiungere un pacchetto al repository.

Aggiungi un pacchetto al repository

Puoi caricare un pacchetto in un repository utilizzando Google Cloud CLI oppure puoi importare un pacchetto archiviato in Cloud Storage.

Per questa guida rapida, caricherai un file di esempio utilizzando il gcloud artifacts yum upload comando.

  1. In Cloud Shell, scarica l'editor di testo nano con il comando:

    sudo yum install --downloaddir=. --downloadonly nano
    

    Yum scarica la versione più recente del pacchetto disponibile dai repository CentOS configurati.

    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
     * base: mirror.dal.nexril.net
     * epel: ord.mirror.rackspace.com
     * extras: centos.mirror.lstn.net
     * updates: ftpmirror.your.org
    Resolving Dependencies
    --> Running transaction check
    ---> Package nano.x86_64 0:2.3.1-10.el7 will be installed
    --> Finished Dependency Resolution
    
    Dependencies Resolved
    
    ================================================================================
     Package        Arch             Version                   Repository      Size
    ================================================================================
    Installing:
     nano           x86_64           2.3.1-10.el7              base           440 k
    
    Transaction Summary
    ================================================================================
    Install  1 Package
    
    Total download size: 440 k
    Installed size: 1.6 M
    Background downloading packages, then exiting:
    nano-2.3.1-10.el7.x86_64.rpm                               | 440 kB   00:00
    exiting because "Download Only" specified
    

    Esegui ls per ottenere il nome file del pacchetto. Il nome file è simile a nano-2.3.1-10.el7.x86_64.rpm.

  2. Per semplificare i comandi gcloud, imposta il repository predefinito su quickstart-yum-repo e la località predefinita su u-france-east1. Una volta impostati i valori, non è necessario specificarli nei comandi gcloud che richiedono un repository o una località.

    Per impostare il repository, esegui il comando:

    gcloud config set artifacts/repository quickstart-yum-repo
    

    Per impostare la località, esegui il comando:

    gcloud config set artifacts/location u-france-east1
    

    Per ulteriori informazioni su questi comandi, consulta la documentazione di gcloud config set.

  3. Esegui gcloud artifacts yum upload per caricare il pacchetto nel repository:

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

    Sostituisci FILE_NAME con il percorso del pacchetto nano.

Visualizza il pacchetto nel repository

Verifica che il pacchetto sia stato aggiunto al repository.

Console

  1. Apri la pagina Repository nella Cloud de Confiance console.

    Apri la pagina Repositori

  2. Nell'elenco dei repository, fai clic sul repository quickstart-yum-repo.

    La pagina Pacchetti elenca i pacchetti nel repository.

gcloud

Per elencare i pacchetti nel repository quickstart-yum-repo, esegui il comando:

 gcloud artifacts packages list

Per visualizzare le versioni di un pacchetto in quickstart-yum-repo, esegui il comando:

gcloud artifacts versions list --package=nano

Crea una VM

Crea una nuova VM Compute Engine in cui installerai il pacchetto di esempio.

In Cloud Shell, esegui questo comando per creare un'istanza VM denominata quickstart-yum-vm.

gcloud compute instances create quickstart-yum-vm \
    --image-family=centos-7 \
    --image-project=centos-cloud \
    --scopes=cloud-platform

Per impostazione predefinita, la VM non dispone degli ambiti di accesso richiesti per l'utilizzo del repository. Il flag --scopes imposta l'ambito di accesso della VM su cloud-platform.

Configura il gestore di pacchetti

Per installare un pacchetto sulla VM, aggiungi il repository che hai creato al file Yum che definisce i repository di pacchetti.

  1. Vai alla pagina Istanze VM.

    Apri la pagina Istanze VM

  2. Nella riga della VM, fai clic su SSH. Si apre una nuova finestra con una sessione del terminale sulla VM.

  3. Aggiorna Yum:

    sudo yum makecache
    
  4. Installa l'helper delle credenziali Yum sulla VM per consentire a Yum di eseguire l'autenticazione utilizzando il seguente comando:

    sudo yum install yum-plugin-artifact-registry
    
  5. Configura la VM per accedere ai pacchetti di Artifact Registry} utilizzando il seguente comando:

    sudo tee -a /etc/yum.repos.d/artifact-registry.repo << EOF
    [yum-quickstart]
    name=My Repository
    baseurl=https://u-france-east1-yum.s3nsregistry.fr/projects/PROJECT/quickstart-yum-repo
    enabled=1
    repo_gpgcheck=0
    gpgcheck=0
    EOF
    

    Sostituisci PROJECT con il tuo Cloud de Confiance by S3NS ID progetto.

Installa il pacchetto

Installa il pacchetto che hai aggiunto al repository.

  1. Aggiorna l'elenco dei pacchetti disponibili:

    sudo yum makecache
    
  2. Installa il pacchetto nel repository.

    sudo yum --enablerepo=yum-quickstart install nano
    

    Quando richiesto, inserisci y.

    Le informazioni di installazione restituite sono simili all'esempio seguente:

    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
     * base: mirrors.cmich.edu
     * epel: ord.mirror.rackspace.com
     * extras: mirror.team-cymru.com
     * updates: mirror.us-midwest-1.nexcess.net
    quickstart-yum-repo                                      | 1.3 kB     00:00
    Resolving Dependencies
    --> Running transaction check
    ---> Package nano.x86_64 0:2.3.1-10.el7 will be installed
    --> Finished Dependency Resolution
    
    Dependencies Resolved
    
    ================================================================================
     Package        Arch             Version                   Repository      Size
    ================================================================================
    Installing:
     nano           x86_64           2.3.1-10.el7              base           440 k
    
    Transaction Summary
    ================================================================================
    Install  1 Package
    
    Total size: 440 k
    Installed size: 1.6 M
    Is this ok [y/d/N]: y
    Downloading packages:
    Running transaction check
    Running transaction test
    Transaction test succeeded
    Running transaction
      Installing : nano-2.3.1-10.el7.x86_64                                     1/1
      Verifying  : nano-2.3.1-10.el7.x86_64                                     1/1
    
    Installed:
      nano.x86_64 0:2.3.1-10.el7
    
    Complete!
    

Esegui la pulizia

Per evitare che al tuo Cloud de Confiance account vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi.

Prima di rimuovere il repository, assicurati che tutti i pacchetti che vuoi conservare siano disponibili in un'altra posizione.

Per eliminare il repository:

Console

  1. Apri la pagina Repository nella Cloud de Confiance console.

    Apri la pagina Repository

  2. Nell'elenco dei repository, seleziona il repository quickstart-yum-repo.

  3. Fai clic su Elimina.

gcloud

  1. Per eliminare il repository quickstart-yum-repo, esegui questo comando:

    gcloud artifacts repositories delete quickstart-yum-repo
    
  2. Se vuoi rimuovere il repository predefinito e le impostazioni di posizione configurate per la configurazione gcloud attiva, esegui i comandi seguenti:

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

Per eliminare la VM che hai creato, esegui questo comando:

gcloud compute instances delete quickstart-yum-vm

Passaggi successivi