Mit Artifact Registry-Yum-Repositories können Sie steuern, welche RPM-Paketversionen auf Ihren virtuellen Maschinen (VMs) installiert werden. Sie können Compute Engine-Instanzen oder externe VMs so konfigurieren, dass Pakete mit den Paketmanagern Yum oder DNF aus privaten oder öffentlichen Repositories abgerufen werden.
Hinweis
Wenn das Yum-Ziel-Repository nicht vorhanden ist, erstellen Sie ein neues Repository. Sie können ein privates Repository 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 Compute Engine-VM-Dienstkontos für jede VM ab, die ein Dienstkonto verwendet.
- Für andere VMs müssen Sie ein Dienstkonto erstellen oder auswählen, das im Namen Ihrer VM agiert. Sie benötigen den Speicherort der Dienstkontoschlü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 Repository-Zugriffsberechtigungen.
Bereiten Sie die VM für den Zugriff auf das Repository vor.
Compute Engine-VM
Weisen Sie der VM
cloud-platform-API-Zugriffsbereiche zu. Informationen zum Festlegen von Zugriffsbereichen finden Sie unter Dienstkonto und Zugriffsbereiche für eine Instanz ändern.Aktualisieren Sie den Paket-Cache 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 niedriger istdnf, wenn Ihr Betriebssystem Enterprise Linux 8 oder höher 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 mit folgendem 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 niedriger istdnf, wenn Ihr Betriebssystem Enterprise Linux 8 oder höher ist
DISTROdurch die Hauptversion von Red Hat Enterprise Linux im FormatelX, wobeiXdie Release-Version ist. Beispiele für gültigeDISTRO-Werte sindel7,el8,el9undel10.
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 niedriger istdnf, wenn Ihr Betriebssystem Enterprise Linux 8 oder höher ist
Suchen Sie in der Datei
artifact-registry.confdie Zeile#service_account_json = "/path/to/creds.json", entfernen Sie die Auskommentierung und fügen Sie den Pfad Ihres Dienstkontoschlüssels hinzu.- Bei Enterprise Linux 7 oder früheren Betriebssystemen lautet der Pfad zur Konfigurationsdatei
/etc/yum/pluginconf.d/artifact-registry.conf. - Bei Enterprise Linux 8 oder höher lautet 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 zur JSON-Datei Ihres Dienstkontoschlüssels.- Bei Enterprise Linux 7 oder früheren Betriebssystemen lautet 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
Wenn Sie eine VM für den Zugriff auf ein Yum-Repository konfigurieren möchten, verwenden Sie das Clienttool yum oder dnf:
Generieren Sie den VM-Konfigurationsbefehl mit dem Befehl
gcloud beta artifacts print-settings yum:gcloud beta artifacts print-settings yum \ --repository=REPOSITORY \ --location=LOCATIONErsetzen Sie Folgendes:
REPOSITORYist der Name des Artifact Registry-Repositorys.-
LOCATIONist der regionale Standort 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 mit dem Befehlteeaus der Ausgabe des Befehlsprint-settingsaus Ihrem Repository abgerufen werden.Wenn Sie beispielsweise Pakete aus dem öffentlichen
my-repoim Projektmy-projectund am Standortu-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 die Repository-Quellen mit dem folgenden Befehl:
sudo yum makecache
Yum kann jetzt eine Verbindung zum Repository herstellen.
Wenn Sie zusätzliche 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.