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.
Hinweise
Wenn das Ziel-Yum-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.
- Für Compute Engine-VMs kann dies das Standarddienstkonto sein. Artifact Registry ruft automatisch Dienstkontoanmeldedaten für Compute Engine-VMs für alle VMs ab, die ein Dienstkonto verwenden.
- Für andere VMs erstellen Sie ein Dienstkonto oder wählen Sie 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.
VM für den Zugriff auf das Repository vorbereiten
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 makecache
Installieren Sie das Artifact Registry-Plug-in auf der VM mit dem folgenden Befehl:
sudo yum install FORMAT-plugin-artifact-registry
Ersetzen Sie Folgendes:
FORMAT
durch einen der folgenden Werte:yum
, wenn Ihr Betriebssystem Enterprise Linux 7 oder früher 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.gpg
Erstellen Sie eine Datei mit dem Namen
/etc/yum.repos.d/artifact-registry-plugin.repo
und 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:
FORMAT
durch einen der folgenden Werte:yum
, wenn Ihr Betriebssystem Enterprise Linux 7 oder früher istdnf
, wenn Ihr Betriebssystem Enterprise Linux 8 oder höher ist
DISTRO
mit dem Red Hat Enterprise Linux-Hauptrelease im FormatelX
, wobeiX
die Release-Version ist. Beispiele für gültigeDISTRO
-Werte sindel7
undel8
.
Aktualisieren Sie Yum mit dem folgenden Befehl:
sudo yum makecache
Installieren Sie das Artifact Registry-Plug-in auf der VM mit dem folgenden Befehl:
yum install FORMAT-plugin-artifact-registry
Ersetzen Sie
FORMAT
durch einen der folgenden Werte:yum
, wenn Ihr Betriebssystem Enterprise Linux 7 oder früher istdnf
, wenn Ihr Betriebssystem Enterprise Linux 8 oder höher ist
Suchen Sie in der Datei
artifact-registry.conf
nach der Zeile#service_account_json = "/path/to/creds.json"
, heben Sie die Auskommentierung der Zeile auf 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 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_KEY
durch den Pfad zur JSON-Datei mit dem Dienstkontoschlüssel.- Bei Enterprise Linux 7 oder früheren Betriebssystemen lautet der Pfad zur Konfigurationsdatei
Öffentliches Repository
VM für den Zugriff auf ein Standard-Yum-Repository konfigurieren
Verwenden Sie das Client-Tool yum
oder dnf
, um eine VM für den Zugriff auf ein Yum-Repository zu konfigurieren:
Generieren Sie den VM-Konfigurationsbefehl mit dem Befehl
gcloud beta artifacts print-settings yum
:gcloud beta artifacts print-settings yum \ --repository=REPOSITORY \ --location=LOCATION
Ersetzen Sie Folgendes:
REPOSITORY
ist der Name des Artifact Registry-Repositorys.-
LOCATION
ist der regionale 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 Befehltee
aus der Ausgabe des Befehlsprint-settings
.Wenn Sie beispielsweise Pakete aus dem öffentlichen
my-repo
im Projektmy-project
und am Standortu-france-east1
installieren 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 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.