Archiviare pacchetti Apt in Artifact Registry
Questa guida rapida mostra come configurare un Artifact Registry Apt privato repository, aggiungere un pacchetto Debian al repository e installare il pacchetto su una VM di Compute Engine che esegue un sistema operativo basato su Debian.
Esegui i passaggi di questa guida rapida utilizzando Cloud Shell e nella shell della VM creata in questa guida rapida.
Per scoprire di più sulla gestione dei pacchetti Debian, consulta Utilizzo dei pacchetti Debian.
Prima di iniziare
- 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Artifact Registry API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Artifact Registry API.
Avvia Cloud Shell
Cloud Shell è preinstallato Google Cloud CLI. gcloud CLI fornisce la riga di comando l'interfaccia utente di Google Cloud.
Avvia Cloud Shell:
Vai alla console Google Cloud.
Nella barra degli strumenti della console Google Cloud, fai clic su Attiva Cloud Shell:
Si apre una sessione di Cloud Shell all'interno di un frame più in basso nella console.
Utilizzerai questa shell per eseguire i comandi gcloud
e creare una VM
repository Git.
Crea un repository
Crea il repository per i tuoi artefatti.
Crea il repository:
Console
Apri la pagina Repository nella console Google Cloud.
Fai clic su Crea repository.
Specifica
quickstart-apt-repo
come nome del repository.Seleziona Apt come formato.
In Tipo di località, seleziona Regione, quindi scegli la località
us-central1
.Fai clic su Crea.
Il repository viene aggiunto all'elenco di repository.
gcloud
In Cloud Shell, esegui il comando seguente per creare un nuovo repository Apt nel progetto corrente denominato
quickstart-apt-repo
nella posizioneus-central1
.gcloud artifacts repositories create quickstart-apt-repo \ --repository-format=apt \ --location=us-central1 \ --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.
Aggiungi un pacchetto al repository
Puoi caricare un pacchetto in un repository utilizzando Google Cloud CLI oppure importare un pacchetto archiviato in Cloud Storage. Se crei pacchetti utilizzando Cloud Build, la build può archiviare i pacchetti in Cloud Storage al posto tuo per eseguire l'importazione.
Per questa guida rapida, carichi un file di esempio utilizzando il comando gcloud artifacts apt
upload
.
In Cloud Shell, scarica il foglio di riferimento rapido di Apt con il comando:
apt download apt-dpkg-ref
Apt scarica la versione più recente del pacchetto disponibile dai tuoi repository Apt configurati.
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)
Esegui
ls
per ottenere il nome file del foglio di riferimento rapido di Apt. Il nome del file è simile aapt-dpkg-ref_5.3.1+nmu2_all.deb
.Per semplificare i comandi
gcloud
, imposta il repository predefinito suquickstart-apt-repo
e la posizione predefinita suus-central1
. Una volta impostati i valori, non è necessario specificarli nei comandigcloud
che richiedono un repository o una posizione.Per impostare il repository, esegui il comando:
gcloud config set artifacts/repository quickstart-apt-repo
Per impostare la località, esegui il comando:
gcloud config set artifacts/location us-central1
Per ulteriori informazioni su questi comandi, consulta la documentazione di gcloud config set.
Esegui
gcloud artifacts apt upload
per caricare il pacchetto nel repository:gcloud artifacts apt upload quickstart-apt-repo \ --source=FILE_NAME
Sostituisci
FILE_NAME
con il percorso dell'Apt di riferimento.
Visualizza il pacchetto nel repository
Verifica che il pacchetto sia stato aggiunto al repository.
Console
Apri la pagina Repository nella console Google Cloud.
Nell'elenco dei repository, fai clic sul repository quickstart-apt-repo.
La pagina Pacchetti elenca i pacchetti nel repository.
gcloud
Per elencare i pacchetti presenti 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
Crea una VM
Crea una nuova VM di Compute Engine in cui installerai il pacchetto di esempio.
In Cloud Shell, esegui il seguente comando per creare un'istanza VM
chiamata quickstart-apt-vm
:
gcloud compute instances create quickstart-apt-vm \
--image-family=debian-10 \
--image-project=debian-cloud \
--scopes=cloud-platform
Per impostazione predefinita, la VM non dispone degli ambiti di accesso necessari per lavorare con il repository. Il flag --scopes
imposta l'ambito di accesso per la VM su cloud-platform
.
Configura il gestore dei pacchetti
Per installare un pacchetto sulla VM, aggiungi il repository che hai creato alla File di configurazione Apt che definisce i repository di pacchetti.
Vai alla pagina Istanze VM.
Nella riga della VM, fai clic su SSH. Si apre una nuova finestra con un terminale sessione sulla VM.
Esegui
gcloud init
per inizializzare Google Cloud CLI sulla VM.Aggiorna app:
sudo apt update
Installa l'helper delle credenziali Apt sulla VM per consentire ad Apt di operare autenticazione:
sudo apt install apt-transport-artifact-registry
Configura la tua VM per accedere ai pacchetti Artifact Registry utilizzando quanto segue :
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
Sostituisci PROJECT con il tuo Google Cloud ID progetto.
Installa il pacchetto
Installa il pacchetto che hai aggiunto al repository.
Aggiorna l'elenco dei pacchetti disponibili:
sudo apt update
Installa il pacchetto nel repository.
sudo apt install apt-dpkg-ref/quickstart-apt-repo
Le informazioni di installazione restituite sono simili all'esempio seguente:
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) ...
Esegui la pulizia
Per evitare che al tuo account Google Cloud 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 Repositories (Repositoi) nella console Google Cloud.
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-repo
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 il seguente comando:
gcloud compute instances delete quickstart-apt-vm
Passaggi successivi
- Scopri di più sull'utilizzo dei pacchetti Deb.
- Leggi le nostre risorse su DevOps ed esplora il nostro programma di ricerca.