Questa pagina descrive l'aggiunta, la visualizzazione e l'eliminazione di pacchetti Debian nei repository Apt.
Prima di iniziare
- Se il repository Apt di destinazione non esiste, creane uno nuovo.
- Configura le VM per accedere al repository.
- (Facoltativo) Configura le impostazioni predefinite per i comandi gcloud.
- Assicurati che i nomi dei pacchetti nei metadati rispettino gli standard per i nomi dei pacchetti Debian.
Aggiunta di pacchetti
Modalità repository: standard
Per aggiungere pacchetti, devi disporre delle autorizzazioni di lettura e scrittura per il repository.
Puoi caricare un pacchetto in un repository utilizzando Google Cloud CLI oppure puoi importare un pacchetto archiviato in Cloud Storage. Se crei pacchetti utilizzando Cloud Build, la build può archiviarli in Cloud Storage per l'importazione.
Le operazioni di importazione o caricamento molto lunghe potrebbero superare il periodo di scadenza del token utilizzato da gcloud CLI per chiamare l'API. Se devi aggiungere un numero molto elevato di pacchetti, valuta la possibilità di aggiungerli in batch più piccoli in modo che ogni operazione di caricamento o importazione possa essere completata in un periodo di tempo più breve. Per saperne di più, consulta la documentazione sulla risoluzione dei problemi relativi ai pacchetti del sistema operativo.
Caricamento diretto
Utilizza il
comando gcloud artifacts apt upload
per caricare un pacchetto in un repository Apt:
gcloud artifacts apt upload REPOSITORY \
--location=LOCATION \
--source=PACKAGES
Sostituisci i seguenti valori:
REPOSITORYè il nome del repository Artifact Registry.-
LOCATIONè la posizione regionale o multiregionale del repository. PACKAGESè il percorso del pacchetto.
Ad esempio, per caricare il pacchetto my-package.deb nel repository Apt
my-repo nella posizione us-west1, esegui:
gcloud artifacts apt upload my-repo \
--location=us-west1 \
--source=my-package.deb
Cloud Storage
- Carica i pacchetti su Cloud Storage procedendo nel seguente modo:
- Carica i pacchetti direttamente in un bucket Cloud Storage
- Crea pacchetti con Cloud Build e archiviali in un bucket
- Esegui questo comando:
gcloud artifacts apt import REPOSITORY \ --location=LOCATION \ --gcs-source=PACKAGES
Sostituisci i seguenti valori:
REPOSITORYè il nome del repository Artifact Registry.-
LOCATIONè la posizione regionale o multiregionale del repository. PACKAGESè un elenco separato da virgole di pacchetti in Cloud Storage. Per caricare tutti i pacchetti da una directory, utilizza un carattere jolly per la directory (*) o un carattere jolly ricorsivo per la directory (**) per caricare tutti i pacchetti in tutte le sottodirectory.
Ad esempio, per caricare il pacchetto
package.debe tutti i pacchetti nella directorydirectorydal bucketmy-bucketal repository Aptmy-reponella posizioneus-west1, esegui:gcloud artifacts apt import my-repo \ --location=us-west1 \ --gcs-source=gs://my-bucket/path/to/package.deb,gs://my-bucket/directory*
Al termine dell'operazione di caricamento o importazione, puoi utilizzare la consoleGoogle Cloud o gcloud CLI per visualizzare i pacchetti nel repository e verificare che siano stati caricati correttamente.
Se hai un repository di grandi dimensioni con molti pacchetti, potrebbero essere necessari diversi minuti per rigenerare l'indice dei pacchetti in modo che i nuovi pacchetti siano visibili al client Apt.
Visualizzazione dei pacchetti
Modalità repository: standard, remoto (anteprima)Per visualizzare i pacchetti, devi disporre delle autorizzazioni nel ruolo di lettore di Artifact Registry. Artifact Registry non elenca i file all'interno dei pacchetti.
Per visualizzare i pacchetti e le versioni dei pacchetti utilizzando la Google Cloud console
o gcloud:
Console
Apri la pagina Repository nella Google Cloud console.
Nell'elenco dei repository, fai clic sul repository appropriato.
La pagina Pacchetti elenca i pacchetti nel repository.
Fai clic su un pacchetto per visualizzarne le versioni.
gcloud
Per elencare i pacchetti in un repository, esegui questo comando:
gcloud artifacts packages list [--repository=REPOSITORY] [--location=LOCATION]
Sostituisci quanto segue:
REPOSITORYè il nome del repository. Se hai configurato un repository predefinito, puoi omettere questo flag per utilizzare quello predefinito.-
LOCATIONè la località regionale o multiregionale del repository. Se hai configurato una località predefinita, puoi omettere questo flag per utilizzare quella predefinita.
Per visualizzare le versioni di un pacchetto, esegui questo comando:
gcloud artifacts versions list --package=PACKAGE \
[--repository=REPOSITORY] [--location=LOCATION]
Sostituisci quanto segue:
PACKAGEè l'ID del pacchetto o l'identificatore completo del pacchetto.REPOSITORYè il nome del repository. Se hai configurato un repository predefinito, puoi omettere questo flag per utilizzare quello predefinito.-
LOCATIONè la località regionale o multiregionale del repository. Utilizza questo flag per visualizzare i repository in una località specifica. Se hai configurato una località predefinita, puoi omettere questo flag per utilizzare quella predefinita.
Installazione dei pacchetti
Modalità repository: standard, remoto (anteprima)Prima di installare i pacchetti, verifica di aver configurato correttamente il gestore dei pacchetti e il repository.
Per installare un pacchetto nel repository:
Aggiorna l'elenco dei pacchetti disponibili:
sudo apt updateInstalla il pacchetto specificando il nome del repository configurato in Apt.
sudo apt install PACKAGE/REPOSITORYSostituisci i seguenti valori:
PACKAGEè il nome del pacchetto.REPOSITORYè il nome del repository Artifact Registry. Per i repository remoti, utilizza il nome del repository upstream standard.
Ad esempio, per installare il pacchetto
my-packagedal repositorymy-repo, esegui il comando:sudo apt install my-package -t my-repo
Eliminazione dei pacchetti
Modalità repository: standard
Prima di eliminare un pacchetto o una versione del pacchetto, verifica di aver comunicato o risolto eventuali dipendenze importanti.
Per eliminare un pacchetto:
Console
Apri la pagina Repository nella console Google Cloud .
Nell'elenco dei repository, fai clic su quello appropriato.
La pagina Pacchetti elenca i pacchetti nel repository.
Seleziona il pacchetto che vuoi eliminare.
Fai clic su ELIMINA.
Nella finestra di dialogo di conferma, fai clic su ELIMINA.
gcloud
Esegui questo comando:
gcloud artifacts packages delete PACKAGE \
[--repository=REPOSITORY] [--location=LOCATION] [--async]
Sostituisci quanto segue:
PACKAGEè il nome del pacchetto nel repository.REPOSITORYè il nome del repository. Se hai configurato un repository predefinito, puoi omettere questo flag per utilizzare quello predefinito.-
LOCATIONè la posizione regionale o multiregionale del repository. Utilizza questo flag per visualizzare i repository in una località specifica. Se hai configurato una località predefinita, puoi omettere questo flag per utilizzare quella predefinita.
Il flag --async fa sì che il comando venga restituito immediatamente,
senza attendere il completamento dell'operazione in corso.
Per eliminare le versioni di un pacchetto:
Console
Apri la pagina Repository nella console Google Cloud .
Nell'elenco dei repository, fai clic su quello appropriato.
La pagina Pacchetti elenca i pacchetti nel repository.
Fai clic su un pacchetto per visualizzarne le versioni.
Seleziona le versioni da eliminare.
Fai clic su ELIMINA.
Nella finestra di dialogo di conferma, fai clic su ELIMINA.
gcloud
Esegui questo comando:
gcloud artifacts versions delete VERSION \
--package=PACKAGE \
[--repository=REPOSITORY] [--location=LOCATION] \
[--async]
Sostituisci quanto segue:
VERSIONè il nome della versione da eliminare.PACKAGEè il nome del pacchetto nel repository.REPOSITORYè il nome del repository. Se hai configurato un repository predefinito, puoi omettere questo flag per utilizzare quello predefinito.-
LOCATIONè la posizione regionale o multiregionale del repository. Utilizza questo flag per visualizzare i repository in una località specifica. Se hai configurato una località predefinita, puoi omettere questo flag per utilizzare quella predefinita.
Il flag --async fa sì che il comando venga restituito immediatamente,
senza attendere il completamento dell'operazione in corso.
Per i repository di grandi dimensioni, la rigenerazione dell'indice dei pacchetti Apt per riflettere le eliminazioni può richiedere alcuni minuti.