I repository Yum di Artifact Registry ti consentono di controllare quali versioni dei pacchetti RPM vengono installate dalle tue macchine virtuali (VM). Puoi configurare le istanze Compute Engine o le VM esterne per eseguire il pull dei pacchetti dai repository privati o pubblici utilizzando i gestori di pacchetti Yum o DNF.
Prima di iniziare
Se il repository Yum di destinazione non esiste, crea un nuovo repository. Puoi creare un repository privato o un repository pubblico che non richiede l'autenticazione.
Prepara una VM per accedere a un repository Yum
Per preparare una VM ad accedere a un repository Yum, utilizza lo strumento client yum o dnf:
Repository privato
Scegli il account di servizio che utilizzerai per concedere l'accesso.
- Per le VM di Compute Engine, potrebbe trattarsi del service account predefinito. Artifact Registry recupera automaticamente le credenziali dell'account di servizio della VM di Compute Engine per qualsiasi VM che utilizza un account di servizio.
- Per le altre VM, crea o scegli un account di servizio che agisca per conto della tua VM. Per configurare la VM, devi conoscere la posizione del file della chiave del account di servizio. Puoi visualizzare e creare chiavi per gli account esistenti nella pagina Service account.
Concedi le autorizzazioni di accesso al repository al tuo account di servizio.
Prepara la VM per accedere al repository.
VM di Compute Engine
Assegna ambiti di accesso API
cloud-platformalla VM. Per informazioni sull'impostazione degli ambiti di accesso, consulta Modifica del account di servizio e degli ambiti di accesso per un'istanza.Aggiorna la cache del pacchetto utilizzando il seguente comando:
sudo yum makecacheInstalla il plug-in Artifact Registry sulla VM utilizzando il seguente comando:
sudo yum install FORMAT-plugin-artifact-registrySostituisci quanto segue:
FORMATcon uno dei seguenti elementi:yum, se il tuo sistema operativo è Enterprise Linux 7 o precedentednf, se il tuo sistema operativo è Enterprise Linux 8 o versioni successive
Altra VM
Installa la chiave di firma RPM utilizzando il seguente comando:
sudo rpm --import https://packages.cloud.google.com/yum/doc/rpm-package-key.gpgCrea un file denominato
/etc/yum.repos.d/artifact-registry-plugin.repocon i seguenti contenuti:[ar-plugin] name=Artifact Registry Plugin baseurl=https://packages.cloud.google.com/yum/repos/FORMAT-plugin-artifact-registry-DISTRO-stable enabled=1 gpgcheck=1
Sostituisci quanto segue:
FORMATcon uno dei seguenti elementi:yum, se il tuo sistema operativo è Enterprise Linux 7 o precedentednf, se il tuo sistema operativo è Enterprise Linux 8 o versioni successive
DISTROcon la versione principale di Red Hat Enterprise Linux nel formatoelX, doveXè la versione di release. Esempi di valoriDISTROvalidi sonoel7,el8,el9eel10.
Aggiorna Yum utilizzando il seguente comando:
sudo yum makecacheInstalla il plug-in Artifact Registry sulla VM utilizzando il seguente comando:
yum install FORMAT-plugin-artifact-registrySostituisci
FORMATcon una delle seguenti opzioni:yum, se il tuo sistema operativo è Enterprise Linux 7 o precedentednf, se il tuo sistema operativo è Enterprise Linux 8 o versioni successive
Trova la riga
#service_account_json = "/path/to/creds.json"nel fileartifact-registry.conf, quindi rimuovi il commento dalla riga e aggiungi il percorso della chiave del account di servizio.- Per i sistemi operativi Enterprise Linux 7 o versioni precedenti, il percorso
del file di configurazione è
/etc/yum/pluginconf.d/artifact-registry.conf. - Per i sistemi operativi Enterprise Linux 8 o versioni successive, il percorso del file di configurazione è
/etc/dnf/plugins/artifact-registry.conf.
Voce del file di configurazione:
service_account_json = "PATH_TO_SERVICE_ACCOUNT_KEY"
Sostituisci
PATH_TO_SERVICE_ACCOUNT_KEYcon il percorso del file JSON della chiave del account di servizio.- Per i sistemi operativi Enterprise Linux 7 o versioni precedenti, il percorso
del file di configurazione è
Repository pubblico
Configura l'accesso pubblico al repository.
Configura una VM per accedere a un repository Yum standard
Per configurare una VM in modo che acceda a un repository Yum, utilizza lo strumento client yum o dnf:
Genera il comando di configurazione della VM eseguendo il comando
gcloud beta artifacts print-settings yum:gcloud beta artifacts print-settings yum \ --repository=REPOSITORY \ --location=LOCATIONSostituisci quanto segue:
REPOSITORYè il nome del repository Artifact Registry.-
LOCATIONè la località regionale del repository.
L'output è simile al seguente:
# To configure your package manager with this repository: # Update Yum: sudo yum makecache # Install the Yum credential helper: sudo yum install yum-plugin-artifact-registry # Configure your VM to access Artifact Registry packages using the following # command: sudo tee -a /etc/yum.repos.d/artifact-registry.repo << EOL [REPOSITORY] name=REPOSITORY baseurl=https://LOCATION-yum.s3nsregistry.fr/projects/PROJECT/REPOSITORY enabled=1 repo_gpgcheck=0 gpgcheck=0 EOL # Update Yum: sudo yum makecache
Configura lo strumento client
yumper recuperare i pacchetti dal tuo repository utilizzando il comandoteedall'output del comandoprint-settings.Ad esempio, per installare pacchetti dal repository
my-repopubblico nel progettomy-projecte nella localitàu-france-east1, utilizza il seguente comando:sudo tee -a /etc/yum.repos.d/artifact-registry.repo << EOL [my-repo] name=My Repository baseurl=https://u-france-east1-yum.s3nsregistry.fr/projects/my-project/my-repo enabled=1 repo_gpgcheck=0 gpgcheck=0 EOL
Aggiorna le origini del repository con il seguente comando:
sudo yum makecache
Yum ora può connettersi al repository.
Se crei repository Yum aggiuntivi, crea un file .repo per ciascuno
in /etc/yum.repos.d/. Esegui di nuovo sudo yum update per aggiornare le origini del repository.