Auf dieser Seite wird beschrieben, wie Sie VMs so konfigurieren, dass RPM-Pakete aus einem Artifact Registry-Yum-Repository installiert werden. Artifact Registry-Yum-Repositories unterstützen yum- und dnf-Clients.
Hinweis
Wenn das Ziel-Yum-Repository nicht vorhanden ist, erstellen Sie ein neues Repository. Sie können ein privates oder ein öffentliches Repository erstellen, für das keine Authentifizierung erforderlich ist.
VM für den Zugriff auf ein Yum-Repository vorbereiten
Verwenden Sie das Clienttool yum oder dnf, um eine VM für den Zugriff auf ein Yum-Repository vorzubereiten:
Privates Repository
Wählen Sie das Dienstkonto aus, mit dem Sie Zugriff gewähren möchten.
- Bei Compute Engine-VMs kann dies das Standarddienstkonto sein. Artifact Registry ruft automatisch die Anmeldedaten des Dienstkontos der Compute Engine-VM für jede VM ab, die ein Dienstkonto verwendet.
- Erstellen oder wählen Sie für andere VMs ein Dienstkonto aus, das im Namen Ihrer VM agieren soll. Sie benötigen den Speicherort der Dienstkonto-Schlüsseldatei, um die VM zu konfigurieren. Auf der Seite Dienstkonten können Sie Schlüssel für vorhandene Konten aufrufen und erstellen.
Gewähren Sie Ihrem Dienstkonto Berechtigungen für den Repository-Zugriff.
Bereiten Sie die VM für den Zugriff auf das Repository vor.
Compute Engine-VM
Weisen Sie der VM
cloud-platformAPI-Zugriffsbereiche zu. Informationen zum Festlegen von Zugriff sbereichen finden Sie unter Dienstkonto und Zugriffsbereiche für eine Instanz ändern.Aktualisieren Sie den Paketcache mit dem folgenden Befehl:
sudo yum makecacheInstallieren Sie das Artifact Registry-Plug-in auf der VM mit dem folgenden Befehl:
sudo yum install FORMAT-plugin-artifact-registryErsetzen Sie Folgendes:
FORMATdurch einen der folgenden Werte:yum, wenn Ihr Betriebssystem Enterprise Linux 7 oder eine frühere Version istdnf, wenn Ihr Betriebssystem Enterprise Linux 8 oder eine höhere Version ist
Andere VM
Installieren Sie den RPM-Signaturschlüssel mit dem folgenden Befehl:
sudo rpm --import https://packages.cloud.google.com/yum/doc/rpm-package-key.gpgErstellen Sie eine Datei mit dem Namen
/etc/yum.repos.d/artifact-registry-plugin.repound dem folgenden Inhalt:[ar-plugin] name=Artifact Registry Plugin baseurl=https://packages.cloud.google.com/yum/repos/FORMAT-plugin-artifact-registry-DISTRO-stable enabled=1 gpgcheck=1
Ersetzen Sie Folgendes:
FORMATdurch einen der folgenden Werte:yum, wenn Ihr Betriebssystem Enterprise Linux 7 oder eine frühere Version istdnf, wenn Ihr Betriebssystem Enterprise Linux 8 oder eine höhere Version ist
DISTROdurch die Hauptversion von Red Hat Enterprise Linux im FormatelX, wobeiXdie Release version ist. GültigeDISTRO-Werte sind beispielsweiseel7undel8.
Aktualisieren Sie Yum mit dem folgenden Befehl:
sudo yum makecacheInstallieren Sie das Artifact Registry-Plug-in auf der VM mit dem folgenden Befehl:
yum install FORMAT-plugin-artifact-registryErsetzen Sie
FORMATdurch einen der folgenden Werte:yum, wenn Ihr Betriebssystem Enterprise Linux 7 oder eine frühere Version istdnf, wenn Ihr Betriebssystem Enterprise Linux 8 oder eine höhere Version ist
Suchen Sie die Zeile
#service_account_json = "/path/to/creds.json"in der Dateiartifact-registry.conf, heben Sie die Auskommentierung der Zeile auf und fügen Sie den Pfad Ihres Dienstkontoschlüssels hinzu.- Bei Betriebssystemen mit Enterprise Linux 7 oder einer früheren Version ist der Pfad zur Konfigurationsdatei
/etc/yum/pluginconf.d/artifact-registry.conf. - Bei Betriebssystemen mit Enterprise Linux 8 oder einer höheren Version ist der Pfad zur Konfigurationsdatei
/etc/dnf/plugins/artifact-registry.conf.
Eintrag in der Konfigurationsdatei:
service_account_json = "PATH_TO_SERVICE_ACCOUNT_KEY"
Ersetzen Sie
PATH_TO_SERVICE_ACCOUNT_KEYdurch den Pfad zu Ihrer JSON-Datei mit dem Dienstkontoschlüssel.- Bei Betriebssystemen mit Enterprise Linux 7 oder einer früheren Version ist der Pfad zur Konfigurationsdatei
Öffentliches Repository
Konfigurieren Sie den öffentlichen Zugriff auf das Repository.
VM für den Zugriff auf ein Standard-Yum-Repository konfigurieren
Verwenden Sie das Clienttool yum oder dnf, um eine VM für den Zugriff auf ein Yum-Repository zu konfigurieren:
Generieren Sie den VM-Konfigurationsbefehl, indem Sie den
gcloud beta artifacts print-settings yumBefehl ausführen:gcloud beta artifacts print-settings yum \ --repository=REPOSITORY \ --location=LOCATIONErsetzen Sie Folgendes:
REPOSITORYdurch den Namen des Artifact Registry-Repositorys.-
LOCATIONdurch den regionalen Speicherort des Repositorys.
Die Ausgabe sieht etwa so aus:
# 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
Konfigurieren Sie das
yum-Clienttool so, dass Pakete aus Ihrem Repository abgerufen werden. Verwenden Sie dazu den Befehlteeaus der Ausgabe des Befehlsprint-settings.Wenn Sie beispielsweise Pakete aus dem öffentlichen
my-repoim Projektmy-projectund am Speicherortu-france-east1installieren möchten, verwenden Sie den folgenden Befehl: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
Aktualisieren Sie Ihre Repository-Quellen mit dem folgenden Befehl:
sudo yum makecache
Yum kann jetzt eine Verbindung zum Repository herstellen.
Wenn Sie weitere Yum-Repositories erstellen, erstellen Sie für jedes eine .repo-Datei
in /etc/yum.repos.d/. Führen Sie sudo yum update noch einmal aus, um die Repository-Quellen zu aktualisieren.