Apt-Pakete in Artifact Registry speichern
In dieser Kurzanleitung wird gezeigt, wie Sie ein privates Apt-Repository in Artifact Registry einrichten, dem Repository ein Debian-Paket hinzufügen und das Paket auf einer Compute Engine-VM mit einem Debian-basierten Betriebssystem installieren.
Weitere Informationen zum Verwalten von Debian-Paketen finden Sie unter Debian-Pakete verwenden.
Hinweis
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Artifact Registry API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Artifact Registry API.
Cloud Shell starten
In Cloud Shell ist die Google Cloud CLI vorinstalliert. Die gcloud CLI ist die primäre Befehlszeile für Google Cloud.
Cloud Shell aufrufen
Rufen Sie die Google Cloud Console auf.
Klicken Sie in der Google Cloud Console auf Cloud Shell aktivieren
.
In einem Frame im unteren Teil der Console wird eine Cloud Shell-Sitzung geöffnet.
In dieser Shell führen Sie die gcloud
-Befehle aus, um eine VM und ein Repository zu erstellen.
Repository erstellen
Erstellen Sie das Repository für Ihre Artefakte.
Im Folgenden wird gezeigt, wie Sie das Repository anlegen.
Console
Öffnen Sie in der Cloud Console die Seite Repositories.
Klicken Sie auf Repository erstellen.
Geben Sie
quickstart-apt-repo
als Repository-Namen an.Wählen Sie Apt als Format aus.
Wählen Sie unter Standorttyp die Option Region und dann den Standort
us-west1
aus.Klicken Sie auf Erstellen.
Das Repository wird der Repository-Liste hinzugefügt.
gcloud
Führen Sie in Cloud Shell den folgenden Befehl aus, um ein neues Apt-Repository im aktuellen Projekt mit dem Namen
quickstart-apt-repo
am Speicherortus-west1
zu erstellen.gcloud artifacts repositories create quickstart-apt-repo \ --repository-format=apt \ --location=us-west1 \ --description="Apt repository"
Führen Sie den folgenden Befehl aus, um zu prüfen, ob Ihr Repository erstellt wurde:
gcloud artifacts repositories list
Sie können dem Repository jetzt ein Paket hinzufügen.
Paket dem Repository hinzufügen
Sie können ein Paket mit der Google Cloud CLI in ein Repository hochladen oder ein in Cloud Storage gespeichertes Paket importieren. Wenn Sie Pakete mit Cloud Build erstellen, können die Pakete im Build in Cloud Storage gespeichert werden, damit Sie sie importieren können.In dieser Kurzanleitung laden Sie eine Beispieldatei mit dem Befehl gcloud artifacts apt upload
hoch.
Laden Sie in Cloud Shell die Kurzübersicht zu Apt mit dem folgenden Befehl herunter:
apt download apt-dpkg-ref
Apt lädt die neueste Version des Pakets herunter, die in Ihren konfigurierten Apt-Repositories verfügbar ist.
Get:1 http://deb.debian.org/debian buster/main amd64 apt-dpkg-ref all 5.3.1+nmu2 [113 kB] Fetched 113 kB in 0s (428 kB/s)
Führen Sie
ls
aus, um den Dateinamen des Apt-Kurzübersichtsblatts abzurufen. Der Dateiname ähneltapt-dpkg-ref_5.3.1+nmu2_all.deb
.Um die
gcloud
-Befehle zu vereinfachen, legen Sie für das Standard-Repository den Wertquickstart-apt-repo
und für den Standard-Speicherortus-west1
fest. Nachdem Sie die Werte festgelegt haben, müssen Sie diese nicht mehr ingcloud
-Befehlen angeben, für die ein Repository oder Speicherort erforderlich ist.Führen Sie den folgenden Befehl aus, um das Repository festzulegen:
gcloud config set artifacts/repository quickstart-apt-repo
Führen Sie den folgenden Befehl aus, um den Standort festzulegen:
gcloud config set artifacts/location us-west1
Weitere Informationen zu diesen Befehlen finden Sie in der Dokumentation zu gcloud config set.
Führen Sie
gcloud artifacts apt upload
aus, um das Paket in das Repository hochzuladen:gcloud artifacts apt upload quickstart-apt-repo \ --source=FILE_NAME
Ersetzen Sie
FILE_NAME
durch den Pfad zum Schnellinfoblatt zu Apt.
Paket im Repository ansehen
Prüfen Sie, ob das Paket dem Repository hinzugefügt wurde.
Console
Öffnen Sie in der Cloud Console die Seite Repositories.
Klicken Sie in der Repository-Liste auf das Repository quickstart-apt-repo.
Auf der Seite Pakete sind die Pakete des Repositorys aufgeführt.
gcloud
Führen Sie den folgenden Befehl aus, um die Pakete im Repository quickstart-apt-repo
aufzulisten:
gcloud artifacts packages list
Führen Sie den folgenden Befehl aus, um die Versionen für ein Paket in quickstart-apt-repo
aufzurufen:
gcloud artifacts versions list --package=apt-dpkg-ref
VM erstellen
Erstellen Sie eine neue Compute Engine-VM, auf der Sie das Beispielpaket installieren.
Führen Sie in Cloud Shell den folgenden Befehl aus, um eine VM-Instanz mit dem Namen quickstart-apt-vm
zu erstellen:
gcloud compute instances create quickstart-apt-vm \
--image-family=debian-10 \
--image-project=debian-cloud \
--scopes=cloud-platform
Standardmäßig hat die VM nicht die erforderlichen Zugriffsbereiche für die Arbeit mit dem Repository. Mit dem Flag --scopes
wird der Zugriffsbereich für die VM auf cloud-platform
festgelegt.
Paketmanager konfigurieren
Wenn Sie ein Paket auf der VM installieren möchten, fügen Sie das von Ihnen erstellte Repository der Apt-Konfigurationsdatei hinzu, in der Paket-Repositories definiert werden.
Gehen Sie zur Seite "VM-Instanzen".
Klicken Sie in der Zeile mit Ihrer VM auf SSH. Ein neues Fenster mit einer Terminalsitzung auf der VM wird geöffnet.
Führen Sie
gcloud init
aus, um die Google Cloud CLI auf Ihrer VM zu initialisieren.Apt aktualisieren:
sudo apt update
Installieren Sie den Apt-Anmeldedaten-Helper auf der VM, damit Apt die Authentifizierung durchführen kann:
sudo apt install apt-transport-artifact-registry
Konfigurieren Sie Ihre VM für den Zugriff auf Artifact Registry-Pakete:
echo 'deb ar+https://us-west1-apt.pkg.dev/projects/PROJECT quickstart-apt-repo main' | sudo tee -a /etc/apt/sources.list.d/artifact-registry.list
Ersetzen Sie PROJECT durch Ihre Google Cloud Projekt-ID.
Paket installieren
Installieren Sie das Paket, das Sie dem Repository hinzugefügt haben.
Aktualisieren Sie die Liste der verfügbaren Pakete:
sudo apt update
Installieren Sie das Paket in Ihrem Repository.
sudo apt install apt-dpkg-ref/quickstart-apt-repo
Die zurückgegebenen Installationsinformationen sehen in etwa so aus:
Reading package lists... Done Building dependency tree Reading state information... Done Selected version '5.3.1+nmu2' (Debian:10.7/stable, namespaces/my-repo/repositories/quickstart-apt-repo:quickstart -apt-repo [all]) for 'apt-dpkg-ref' The following NEW packages will be installed: apt-dpkg-ref 0 upgraded, 1 newly installed, 0 to remove and 3 not upgraded. Need to get 113 kB of archives. After this operation, 128 kB of additional disk space will be used. Get:1 http://deb.debian.org/debian buster/main amd64 apt-dpkg-ref all 5.3.1+nmu2 [113 kB] Fetched 113 kB in 0s (693 kB/s) Selecting previously unselected package apt-dpkg-ref. (Reading database ... 39506 files and directories currently installed.) Preparing to unpack .../apt-dpkg-ref_5.3.1+nmu2_all.deb ... Unpacking apt-dpkg-ref (5.3.1+nmu2) ... Setting up apt-dpkg-ref (5.3.1+nmu2) ...
Bereinigen
Mit den folgenden Schritten vermeiden Sie, dass Ihrem Google Cloud -Konto die in dieser Anleitung verwendeten Ressourcen in Rechnung gestellt werden:
Prüfen Sie vor dem Entfernen des Repositorys, ob alle Pakete, die Sie beibehalten möchten, an einem anderen Speicherort verfügbar sind.
So löschen Sie das Repository:
Console
Öffnen Sie in der Cloud Console die Seite Repositories.
Wählen Sie in der Repository-Liste das Repository quickstart-apt-repo aus.
Klicken Sie auf Löschen.
gcloud
Um das Repository
quickstart-apt-repo
zu löschen, führen Sie folgenden Befehl aus:gcloud artifacts repositories delete quickstart-apt-repo
Wenn Sie die Standardeinstellungen für das Repository und den Standort entfernen möchten, die Sie für die aktive
gcloud
-Konfiguration festgelegt haben, führen Sie die folgenden Befehle aus:gcloud config unset artifacts/repository gcloud config unset artifacts/location
Führen Sie den folgenden Befehl aus, um die von Ihnen erstellte VM zu löschen:
gcloud compute instances delete quickstart-apt-vm
Nächste Schritte
- Weitere Informationen zum Arbeiten mit Deb-Paketen
- Lesen Sie mehr über DevOps und informieren Sie sich über das DevOps-Forschungsprogramm.