Archiviare pacchetti Apt in Artifact Registry
Questa guida rapida mostra come configurare un repository Apt di Artifact Registry privato, aggiungere un pacchetto Debian al repository e installare il pacchetto su una VM Compute Engine che esegue un sistema operativo basato su Debian.
Per saperne di più sulla gestione dei pacchetti Debian, consulta Utilizzo dei pacchetti Debian.
Prima di iniziare
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
-
Verify that billing is enabled for your Cloud de Confiance project.
Enable the Artifact Registry API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per creare e gestire i repository di pacchetti Apt di Artifact Registry, chiedi all'amministratore di concederti i seguenti ruoli IAM sul progetto:
- Amministratore Artifact Registry (
roles/artifactregistry.admin) -
Crea una macchina virtuale (VM) in Compute Engine:
Compute Instance Admin (v1) (
roles/compute.instanceAdmin.v1)
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
Installa e inizializza Google Cloud CLI se non è già installata. Per un'installazione esistente, aggiorna i componenti di Google Cloud CLI con il comando:
gcloud components updatePer controllare la versione di gcloud CLI, esegui il comando:
gcloud version
Crea un repository
Crea il repository per gli artefatti.
Crea il repository:
Console
Apri la pagina Repository nella console Cloud de Confiance .
Fai clic su Crea repository.
Specifica
quickstart-apt-repocome nome del repository.Seleziona Apt come formato.
In Tipo di località, seleziona Regione, quindi scegli la località
u-france-east1.Fai clic su Crea.
Il repository viene aggiunto all'elenco dei repository.
gcloud
In Cloud Shell, esegui questo comando per creare un nuovo repository Apt nel progetto attuale denominato
quickstart-apt-reponella posizioneu-france-east1.gcloud artifacts repositories create quickstart-apt-repo \ --repository-format=apt \ --location=u-france-east1 \ --description="Apt repository"Esegui questo comando per verificare che il repository sia stato creato:
gcloud artifacts repositories list
Ora puoi aggiungere un pacchetto al repository. Cloud Shell utilizza un'immagine Ubuntu creata da Google, non Debian. Per gestire i pacchetti Debian nel repository, utilizzerai una VM che utilizza un'immagine sistema operativo Debian.
Crea una VM
Crea una nuova VM di Compute Engine in cui installare il pacchetto di esempio.
In Cloud Shell, esegui questo comando per creare un'istanza VM
denominata quickstart-apt-vm:
gcloud compute instances create quickstart-apt-vm \
--image-family=debian-12 \
--image-project=debian-cloud \
--scopes=cloud-platform
Per impostazione predefinita, la VM non dispone degli ambiti di accesso richiesti per
lavorare con il repository. Il flag --scopes imposta l'ambito di accesso
per la VM su cloud-platform.
Vai alla pagina Istanze VM.
Nella riga della tua VM, fai clic su SSH. Si apre una nuova finestra con una sessione del terminale sulla VM.
Aggiungere 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, carichi un file di esempio utilizzando il
comando gcloud artifacts apt upload.
Esegui
gcloud initper inizializzare Google Cloud CLI sulla tua VM.Aggiornamento di Apt:
sudo apt updateScarica il pacchetto curl con il comando:
apt download curlApt scarica l'ultima versione del pacchetto disponibile dai repository Apt configurati.
Get:1 file:/etc/apt/mirrors/debian.list Mirrorlist [30 B] Get:2 https://deb.debian.org/debian bookworm/main amd64 curl amd64 7.88.1-10+deb12u14 [316 kB] Fetched 316 kB in 0s (3078 kB/s)Esegui
lsper ottenere il nome del file del pacchetto curl. Il nome del file è simile acurl_7.88.1-10+deb12u14_amd64.deb.Per semplificare i comandi
gcloud, imposta il repository predefinito suquickstart-apt-repoe la località predefinita suu-france-east1. Una volta impostati i valori, non è necessario specificarli nei comandigcloudche richiedono un repository o una posizione.Per impostare il repository, esegui il comando:
gcloud config set artifacts/repository quickstart-apt-repoPer impostare la località, esegui il comando:
gcloud config set artifacts/location u-france-east1Per ulteriori informazioni su questi comandi, consulta la documentazione di gcloud config set.
Esegui
gcloud artifacts apt uploadper caricare il pacchetto nel repository:gcloud artifacts apt upload quickstart-apt-repo \ --source=FILE_NAMESostituisci
FILE_NAMEcon il percorso del pacchetto curl.
Visualizza il pacchetto nel repository
Verifica che il pacchetto sia stato aggiunto al repository.
Console
Apri la pagina Repository nella console Cloud de Confiance .
Nell'elenco dei repository, fai clic sul repository quickstart-apt-repo.
La pagina Pacchetti elenca i pacchetti nel repository.
gcloud
Per elencare i pacchetti nel repository quickstart-apt-repo, esegui il comando:
gcloud artifacts packages list
Per visualizzare le versioni di un pacchetto in quickstart-apt-repo, esegui il comando:
gcloud artifacts versions list --package=apt-dpkg-ref
Configura il gestore dei pacchetti
Per installare un pacchetto sulla VM, aggiungi il repository che hai creato al file di configurazione Apt che definisce i repository dei pacchetti.
Installa l'helper delle credenziali Apt sulla VM per consentire ad Apt di eseguire l'autenticazione:
sudo apt install apt-transport-artifact-registryConfigura la VM per accedere ai pacchetti Artifact Registry:
echo 'deb ar+https://u-france-east1-apt.s3nsregistry.fr/projects/PROJECT quickstart-apt-repo main' | sudo tee -a /etc/apt/sources.list.d/artifact-registry.listSostituisci PROJECT con l'ID progetto Cloud de Confiance by S3NS.
Installa il pacchetto
Installa il pacchetto che hai aggiunto al repository.
Aggiorna l'elenco dei pacchetti disponibili:
sudo apt updateInstalla il pacchetto dal repository.
sudo apt install curl/quickstart-apt-repoLe informazioni di installazione restituite sono simili al seguente esempio:
Reading package lists... Done Building dependency tree... Done Reading state information... Done Selected version '7.88.1-10+deb12u14' (quickstart-apt-repo:quickstart-apt-repo, Debian:12.12/oldstable [amd64]) for 'curl' The following additional packages will be installed: libcurl3-gnutls libcurl4 The following packages will be upgraded: curl libcurl3-gnutls libcurl4 3 upgraded, 0 newly installed, 0 to remove and 77 not upgraded. Need to get 1093 kB of archives. After this operation, 0 B of additional disk space will be used. Do you want to continue? [Y/n] y Get:1 file:/etc/apt/mirrors/debian.list Mirrorlist [30 B] Get:2 https://deb.debian.org/debian bookworm/main amd64 libcurl4 amd64 7.88.1-10+deb12u14 [392 kB] Get:3 https://deb.debian.org/debian bookworm/main amd64 libcurl3-gnutls amd64 7.88.1-10+deb12u14 [386 kB] Get:4 ar+https://u-france-east1-apt.pkg.dev/projects/PROJECT quickstart-apt-repo/main amd64 curl amd64 7.88.1-10+deb12u14 [316 kB] Fetched 1093 kB in 1s (947 kB/s) Reading changelogs... Done (Reading database ... 72080 files and directories currently installed.) Preparing to unpack .../curl_7.88.1-10+deb12u14_amd64.deb ... Unpacking curl (7.88.1-10+deb12u14) over (7.88.1-10+deb12u12) ... Preparing to unpack .../libcurl4_7.88.1-10+deb12u14_amd64.deb ... Unpacking libcurl4:amd64 (7.88.1-10+deb12u14) over (7.88.1-10+deb12u12) ... Preparing to unpack .../libcurl3-gnutls_7.88.1-10+deb12u14_amd64.deb ... Unpacking libcurl3-gnutls:amd64 (7.88.1-10+deb12u14) over (7.88.1-10+deb12u12) ... Setting up libcurl3-gnutls:amd64 (7.88.1-10+deb12u14) ... Setting up libcurl4:amd64 (7.88.1-10+deb12u14) ... Setting up curl (7.88.1-10+deb12u14) ... Processing triggers for man-db (2.11.2-2) ... Processing triggers for libc-bin (2.36-9+deb12u10) ...
Esegui la pulizia
Per evitare che al tuo account Cloud de Confiance 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
Apri la pagina Repository nella console Cloud de Confiance .
Nell'elenco dei repository, seleziona il repository quickstart-apt-repo.
Fai clic su Elimina.
gcloud
Per eliminare il repository
quickstart-apt-repo, esegui questo comando:gcloud artifacts repositories delete quickstart-apt-repoSe vuoi rimuovere il repository predefinito e le impostazioni di posizione configurate per la configurazione
gcloudattiva, 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-apt-vm
Passaggi successivi
- Scopri di più sull'utilizzo dei pacchetti Deb.
- Leggi informazioni su DevOps ed esplora il programma di ricerca DevOps.