Auf dieser Seite wird beschrieben, wie RPM-Pakete in Yum-Repositories hinzugefügt, aufgerufen und gelöscht werden. Yum-Repositories für Artifact Registry unterstützen Yum und DNF.
Hinweise
- Wenn das Yum-Ziel-Repository nicht vorhanden ist, erstellen Sie ein neues Repository.
- Konfigurieren Sie VMs für den Zugriff auf das Repository.
- (Optional) Konfigurieren Sie die Standardeinstellungen für gcloud-Befehle.
- Achten Sie darauf, dass die Paketnamen in den Metadaten den Richtlinien für die Benennung von Fedora-Paketen und den Richtlinien für die Fedora-Paketversionsverwaltung entsprechen.
Pakete hinzufügen
Repository-Modi: Standard
Sie benötigen Lese- und Schreibberechtigungen für das Repository, um Pakete hinzufügen zu können.
Sie können ein Paket mithilfe der Google Cloud CLI in ein Repository hochladen oder ein Paket importieren, das in Cloud Storage gespeichert ist. Wenn Sie Pakete mit Cloud Build erstellen, kann der Build diese in Cloud Storage speichern, damit Sie sie importieren können.
Sehr lange Import- oder Uploadvorgänge können die Ablauffrist für das Token überschreiten, das die gcloud CLI zum Aufrufen der API verwendet. Wenn Sie sehr viele Pakete hinzufügen möchten, sollten Sie sie in kleineren Batches hinzufügen, damit jeder Upload- oder Importvorgang in kürzerer Zeit abgeschlossen werden kann. Weitere Informationen finden Sie in der Dokumentation zur Fehlerbehebung bei Betriebssystempaketen.
Direkter Upload
Verwenden Sie den Befehl gcloud artifacts yum upload
, um ein Paket in ein Yum-Repository hochzuladen:
gcloud artifacts yum upload REPOSITORY \
--location=LOCATION \
--source=PACKAGES
Ersetzen Sie die folgenden Werte:
- REPOSITORY ist der Name des Artifact Registry-Repositorys.
- LOCATION ist der regionale oder multiregionale Standort des Repositorys.
- PACKAGES ist der Pfad zum Paket.
Wenn Sie beispielsweise das Paket my-package.rpm
in das Yum-Repository my-repo
am Speicherort us-central1
hochladen möchten, führen Sie Folgendes aus:
gcloud artifacts yum upload my-repo \ --location=us-central1 \ --source=my-package.rpm
Cloud Storage
Laden Sie die Pakete mit einer der folgenden Methoden in Cloud Storage hoch:
- Pakete direkt in einen Cloud Storage-Bucket hochladen
- Pakete mit Cloud Build erstellen und in einem Bucket speichern
Führen Sie dazu diesen Befehl aus:
gcloud artifacts yum import REPOSITORY \ --location=LOCATION \ --gcs-source=PACKAGES
Ersetzen Sie die folgenden Werte:
- REPOSITORY ist der Name des Artifact Registry-Repositorys.
- LOCATION ist der regionale oder multiregionale Standort des Repositorys.
- PACKAGES ist eine durch Kommas getrennte Liste von Paketen in Cloud Storage. Verwenden Sie zum Hochladen aller Pakete aus einem Verzeichnis einen Verzeichnisplatzhalter (
*
) oder einen rekursiven Verzeichnisplatzhalter (**), um alle Pakete in allen Unterverzeichnissen hochzuladen.
Wenn Sie beispielsweise das Paket
package.rpm
und alle Pakete im Verzeichnisdirectory
aus dem Bucketmy-bucket
in das Yum-Repositorymy-repo
am Standortus-central1
hochladen möchten, führen Sie Folgendes aus:gcloud artifacts yum import my-repo \ --location=us-central1 \ --gcs-source=gs://my-bucket/path/to/package.rpm,gs://my-bucket/directory*
Wenn der Upload- oder Importvorgang abgeschlossen ist, können Sie mit der Google Cloud Console oder der gcloud CLI Pakete im Repository anzeigen und prüfen, ob sie erfolgreich hochgeladen wurden.
Wenn Sie ein großes Repository mit vielen Paketen haben, kann es mehrere Minuten dauern, bis der Paketindex neu generiert wird, damit die neuen Pakete für den Yum-Client sichtbar sind.
Pakete ansehen
Repository-Modi: Standard, remote (Vorabversion)
Zum Aufrufen von Paketen benötigen Sie die Berechtigungen in der Rolle „Artifact Registry-Leser“. Artifact Registry listet keine Dateien in Paketen auf.
So rufen Sie Pakete und Paketversionen mit der Google Cloud Console oder gcloud
auf:
Console
Öffnen Sie in der Cloud Console die Seite Repositories.
Klicken Sie in der Liste der Repositories auf das entsprechende Repository.
Auf der Seite Pakete sind die Pakete des Repositorys aufgeführt.
Klicken Sie auf das Paket, um die Versionen des Pakets aufzurufen.
gcloud
Führen Sie den folgenden Befehl aus, um die Pakete in einem Repository aufzulisten:
gcloud artifacts packages list [--repository=REPOSITORY] [--location=LOCATION]
Dabei gilt:
- REPOSITORY ist der Name des Repositorys. Wenn Sie ein Standard-Repository konfiguriert haben, wird bei Weglassen dieses Flags dieses Standard-Repository verwendet.
- LOCATION ist ein-regionaler oder multiregionaler Standort. Verwenden Sie dieses Flag, um Repositories an einem bestimmten Speicherort aufzurufen. Wenn Sie einen default-Speicherort konfiguriert haben, können Sie dieses Flag weglassen, um den Standardwert zu verwenden.
Um die Versionen für ein Paket aufzurufen, führen Sie folgenden Befehl aus:
gcloud artifacts versions list --package=PACKAGE \
[--repository=REPOSITORY] [--location=LOCATION]
Wo
- PACKAGE ist die ID des Pakets oder die vollqualifizierte Kennzeichnung für das Paket.
- REPOSITORY ist der Name des Repositorys. Wenn Sie ein Standard-Repository konfiguriert haben, wird bei Weglassen dieses Flags dieses Standard-Repository verwendet.
- LOCATION ist ein-regionaler oder multiregionaler Standort. Verwenden Sie dieses Flag, um Repositories an einem bestimmten Speicherort aufzurufen. Wenn Sie einen default-Speicherort konfiguriert haben, können Sie dieses Flag weglassen, um den Standardwert zu verwenden.
Pakete installieren
Repository-Modi: Standard, remote (Vorabversion)
Prüfen Sie vor der Installation von Paketen, ob Sie den Paketmanager und das Repository korrekt konfiguriert haben.
So installieren Sie Pakete:
Installieren Sie das Paket und geben Sie den Namen des in Yum konfigurierten Repositorys an.
sudo yum --enablerepo=REPOSITORY install PACKAGE
Ersetzen Sie die folgenden Werte:
- PACKAGE ist der Paketname.
- REPOSITORY ist der Name des Repositorys, das in der Datei
.repo
konfiguriert ist.
Wenn Sie beispielsweise das Paket my-package
aus dem Repository my-repo
installieren möchten, führen Sie den folgenden Befehl aus:
sudo yum --enablerepo=my-repo install my-package
Pakete löschen
Repository-Modi: Standard
Bevor Sie ein Paket oder eine Paketversion löschen, prüfen Sie, ob Sie alle wichtigen Abhängigkeiten davon kommuniziert oder behoben haben.
So löschen Sie ein Paket:
Console
Öffnen Sie in der Cloud Console die Seite Repositories.
Klicken Sie in der Liste der Repositories auf das entsprechende Repository.
Auf der Seite Pakete sind die Pakete des Repositorys aufgeführt.
Wählen Sie das Paket aus, das Sie löschen möchten.
Klicken Sie auf Löschen.
Klicken Sie im Bestätigungsdialogfeld auf Löschen.
gcloud
Führen Sie dazu diesen Befehl aus:
gcloud artifacts packages delete PACKAGE \
[--repository=REPOSITORY] [--location=LOCATION] [--async]
Dabei gilt:
- PACKAGE ist der Name des Pakets im Repository.
- REPOSITORY ist der Name des Repositorys. Wenn Sie ein Standard-Repository konfiguriert haben, wird bei Weglassen dieses Flags dieses Standard-Repository verwendet.
- LOCATION ist ein-regionaler oder multiregionaler Standort. Verwenden Sie dieses Flag, um Repositories an einem bestimmten Speicherort aufzurufen. Wenn Sie einen default-Speicherort konfiguriert haben, können Sie dieses Flag weglassen, um den Standardwert zu verwenden.
--async
wird sofort zurückgegeben, ohne auf den Abschluss des Vorgangs zu warten.
So löschen Sie Versionen eines Pakets:
Console
Öffnen Sie in der Cloud Console die Seite Repositories.
Klicken Sie in der Liste der Repositories auf das entsprechende Repository.
Auf der Seite Pakete sind die Pakete des Repositorys aufgeführt.
Klicken Sie auf das Paket, um die Versionen des Pakets aufzurufen.
Wählen Sie die Versionen aus, die Sie löschen möchten.
Klicken Sie auf Löschen.
Klicken Sie im Bestätigungsdialogfeld auf Löschen.
gcloud
Führen Sie dazu diesen Befehl aus:
gcloud artifacts versions delete VERSION \
--package=PACKAGE \
[--repository=REPOSITORY] [--location=LOCATION] \
[--async]
Dabei gilt:
- PACKAGE ist der Name des Pakets im Repository.
- REPOSITORY ist der Name des Repositorys. Wenn Sie ein Standard-Repository konfiguriert haben, wird bei Weglassen dieses Flags dieses Standard-Repository verwendet.
- LOCATION ist ein-regionaler oder multiregionaler Standort. Verwenden Sie dieses Flag, um Repositories an einem bestimmten Speicherort aufzurufen. Wenn Sie einen default-Speicherort konfiguriert haben, können Sie dieses Flag weglassen, um den Standardwert zu verwenden.
--async
wird sofort zurückgegeben, ohne auf den Abschluss des Vorgangs zu warten.
Bei großen Repositories kann es einige Minuten dauern, bis der Yum-Paketindex neu generiert wird, damit die Löschungen widergespiegelt werden.
Nächste Schritte
- Weitere Informationen zum Verwalten von Debian-Paketen
- Einzelne Dateien in einem Paket herunterladen