Apt-Pakete in Artifact Registry speichern

In dieser Kurzanleitung erfahren Sie, wie Sie ein privates Artifact Registry-Apt-Repository einrichten, dem Repository ein Debian-Paket hinzufügen und das Paket auf einer Compute Engine-VM installieren, auf der ein Debian-basiertes Betriebssystem ausgeführt wird.

Die Schritte in dieser Kurzanleitung werden mit Cloud Shell und in der Shell auf der VM ausgeführt, die Sie in dieser Kurzanleitung erstellen.

Weitere Informationen zum Verwalten von Debian-Paketen finden Sie unter Mit Debian-Paketen arbeiten.

Hinweise

  1. 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.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Artifact Registry API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Artifact Registry API.

    Enable the API

Cloud Shell starten

In Cloud Shell ist die Google Cloud CLI vorinstalliert. Die gcloud CLI bietet die primäre Befehlszeile für Google Cloud.

Cloud Shell aufrufen

  1. Rufen Sie die Google Cloud Console auf.

    Google Cloud Console

  2. Klicken Sie in der Symbolleiste der Google Cloud Console auf Cloud Shell aktivieren:

In einem Frame im unteren Teil der Console wird eine Cloud Shell-Sitzung geöffnet. Sie verwenden diese Shell, um die gcloud-Befehle zum Erstellen einer VM und eines Repositorys auszuführen.

Repository erstellen

Erstellen Sie das Repository für Ihre Artefakte.

  1. Im Folgenden wird gezeigt, wie Sie das Repository anlegen.

    Console

    1. Öffnen Sie in der Cloud Console die Seite Repositories.

      Zur Seite „Repositories“

    2. Klicken Sie auf Repository erstellen.

    3. Geben Sie quickstart-apt-repo als Repository-Namen an.

    4. Wählen Sie Apt als Format aus.

    5. Wählen Sie unter Standorttyp die Option Region und dann den Standort us-central1 aus.

    6. Klicken Sie auf Erstellen.

    Das Repository wird der Repository-Liste hinzugefügt.

    gcloud

    1. Führen Sie in Cloud Shell den folgenden Befehl aus, um im aktuellen Projekt quickstart-apt-repo am Standort us-central1 ein neues Apt-Repository zu erstellen.

      gcloud artifacts repositories create quickstart-apt-repo \
          --repository-format=apt \
          --location=us-central1 \
          --description="Apt repository"
      
    2. 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 zum 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, kann der Build die Pakete in Cloud Storage speichern, damit Sie sie importieren können.

In dieser Kurzanleitung laden Sie eine Beispieldatei mit dem Befehl gcloud artifacts apt upload hoch.

  1. Laden Sie in Cloud Shell mit dem folgenden Befehl die Apt-Kurzübersicht 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-Schnellreferenzblatts abzurufen. Der Dateiname ähnelt apt-dpkg-ref_5.3.1+nmu2_all.deb.

  2. Um die gcloud-Befehle zu vereinfachen, legen Sie für das Standard-Repository den Wert quickstart-apt-repo und für den Standard-Speicherort us-central1 fest. Nachdem Sie die Werte festgelegt haben, müssen Sie diese nicht mehr in gcloud-Befehlen angeben, für die ein Repository oder Speicherort erforderlich ist.

    Um das Repository festzulegen, führen Sie folgenden Befehl aus:

    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-central1
    

    Weitere Informationen zu diesen Befehlen finden Sie in der Dokumentation zu gcloud config set.

  3. 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 Apt-Kurzreferenzblatt.

Paket im Repository ansehen

Prüfen Sie, ob das Paket dem Repository hinzugefügt wurde.

Console

  1. Öffnen Sie in der Cloud Console die Seite Repositories.

    Zur Seite „Repositories“

  2. 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 Versionen für ein Paket in quickstart-apt-repo anzusehen:

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

Zum Installieren eines Pakets auf der VM fügen Sie das von Ihnen erstellte Repository der Apt-Konfigurationsdatei hinzu, die die Paket-Repositories definiert.

  1. Gehen Sie zur Seite der VM-Instanzen.

    Zur Seite „VM-Instanzen“

  2. Klicken Sie in der Zeile mit Ihrer VM auf SSH. Ein neues Fenster mit einer Terminalsitzung auf der VM wird geöffnet.

  3. Führen Sie gcloud init aus, um die Google Cloud CLI auf Ihrer VM zu initialisieren.

  4. Apt aktualisieren:

    sudo apt update
    
  5. Installieren Sie Apt Credential Helper auf der VM, damit Apt die Authentifizierung durchführen kann:

    sudo apt install apt-transport-artifact-registry
    
  6. Konfigurieren Sie die VM mit dem folgenden Befehl für den Zugriff auf Artifact Registry-Pakete:

    echo 'deb ar+https://us-central1-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.

  1. Aktualisieren Sie die Liste der verfügbaren Pakete:

    sudo apt update
    
  2. Installieren Sie das Paket in Ihrem Repository.

    sudo apt install apt-dpkg-ref/quickstart-apt-repo
    

    Die zurückgegebenen Installationsinformationen sehen aus wie im folgenden Beispiel:

    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 auf dieser Seite 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

  1. Öffnen Sie in der Cloud Console die Seite Repositories.

    Zur Seite „Repositories“

  2. Wählen Sie in der Repository-Liste das Repository quickstart-apt-repo aus.

  3. Klicken Sie auf Löschen.

gcloud

  1. Um das Repository quickstart-apt-repo zu löschen, führen Sie folgenden Befehl aus:

    gcloud artifacts repositories delete quickstart-apt-repo
    
  2. 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