In diesem Thema finden Sie Informationen zum Weitergeben der Standardpakete aus der Registrierung für öffentliche Container in eine private Harbor-Registrierung, die als Supervisor-Dienst ausgeführt wird.
Voraussetzungen
Erfüllen Sie die folgenden Voraussetzungen
- Installieren des Supervisor-Diensts.
- Konfigurieren Sie einen Ubuntu-Host als Docker-Client. Weitere Informationen hierzu finden Sie unter Konfigurieren eines Docker-Clients mit dem Harbor-Registrierungszertifikat.
- Installieren Sie jq auf dem Ubuntu-Host. Weitere Informationen hierzu finden Sie unter https://jqlang.github.io/jq/download/.
Installieren des Carvel-Dienstprogramms „Image-Paket“
Installieren Sie das Carvel-Dienstprogramm
imgpkg
auf dem Ubuntu-Client, auf dem kubectl installiert ist.
- Installieren Sie
imgpkg
.wget -O- https://carvel.dev/install.sh > install.sh sudo bash install.sh
- Überprüfen Sie die Installation.
imgpkg version
Erwartetes Ergebnis:imgpkg version 0.41.1
Auflisten der verfügbaren Images für jedes Tanzu-Standardpaket
Cert Manager
imgpkg tag list -i projects.registry.vmware.com/tkg/packages/standard/cert-manager
Contour mit Envoy
imgpkg tag list -i projects.registry.vmware.com/tkg/packages/standard/contour
ExternalDNS
imgpkg tag list -i projects.registry.vmware.com/tkg/packages/standard/external-dns
Prometheus mit Alertmanager
imgpkg tag list -i projects.registry.vmware.com/tkg/packages/standard/prometheus
Grafana
imgpkg tag list -i projects.registry.vmware.com/tkg/packages/standard/grafana
Fluent Bit
imgpkg tag list -i projects.registry.vmware.com/tkg/packages/standard/fluent-bit
Harbor
imgpkg tag list -i projects.registry.vmware.com/tkg/packages/standard/harbor
Abrufen der Standardpaket-Images aus der öffentlichen VMware-Registrierung
Rufen Sie die Tanzu-Standardpakete aus der öffentlichen VMware-Registrierung unter https://projects.registry.vmware.com/ ab. Aktualisieren Sie die Version, sodass sie mit der abzurufenden Version übereinstimmt.
Cert Manager
docker pull projects.registry.vmware.com/tkg/packages/standard/cert-manager:v1.7.2_vmware.3-tkg.3
Contour mit Envoy
docker pull projects.registry.vmware.com/tkg/packages/standard/contour:v1.23.5_vmware.1-tkg.1
ExternalDNS
docker pull projects.registry.vmware.com/tkg/packages/standard/external-dns:v0.12.2_vmware.5-tkg.1
Prometheus mit Alertmanager
docker pull projects.registry.vmware.com/tkg/packages/standard/prometheus:v2.37.0_vmware.3-tkg.1
Grafana
docker pull projects.registry.vmware.com/tkg/packages/standard/grafana:v7.5.17_vmware.2-tkg.1
Fluent Bit
docker pull projects.registry.vmware.com/tkg/packages/standard/fluent-bit:v1.9.5_vmware.1-tkg.2
Harbor
docker pull projects.registry.vmware.com/tkg/packages/standard/harbor:v2.7.1_vmware.1-tkg.1
Erstellen eines Projekts in der privaten Harbor-Registrierung
Erstellen Sie ein öffentliches Projekt in Harbor, um die Tanzu-Pakete zu hosten.
- Melden Sie sich bei der privaten Harbor-Registrierung an.
- Wählen Sie in Harbor die Option aus.
- Erstellen Sie ein neues öffentliches Projekt mit dem Namen tanzu-packages.
Kennzeichnen der Standardpaket-Images
Kennzeichnen Sie die Images mit der folgenden Syntax.
docker tag SOURCE_IMAGE[:TAG] harbordomain.com/tanzu-packages/REPOSITORY[:TAG]
Dabei gilt:
- SOURCE_IMAGE[:TAG] ist der Name des Image, das Sie abgerufen haben.
- harbordomain.com ist der DNS-Name Ihres Harbor-Servers.
- REPOSITORY[:TAG] ist der Name des Image-Tags
Cert Manager
docker tag projects.registry.vmware.com/tkg/packages/standard/cert-manager:v1.7.2_vmware.3-tkg.3 harbordomain.com/tanzu-packages/cert-manager:v1.7.2
Contour mit Envoy
docker tag projects.registry.vmware.com/tkg/packages/standard/contour:v1.23.5_vmware.1-tkg.1 harbordomain.com/tanzu-packages/contour:v1.23.5
ExternalDNS
docker tag projects.registry.vmware.com/tkg/packages/standard/external-dns:v0.12.2_vmware.5-tkg.1 harbordomain.com/tanzu-packages/external-dns:v0.12.2
Prometheus mit Alertmanager
docker tag projects.registry.vmware.com/tkg/packages/standard/prometheus:v2.37.0_vmware.3-tkg.1 harbordomain.com/tanzu-packages/prometheus:v2.37.0
Grafana
docker tag projects.registry.vmware.com/tkg/packages/standard/grafana:v7.5.17_vmware.2-tkg.1 harbordomain.com/tanzu-packages/grafana:v7.5.17
Fluent Bit
docker tag projects.registry.vmware.com/tkg/packages/standard/fluent-bit:v1.9.5_vmware.1-tkg.2 harbordomain.com/tanzu-packages/fluent-bit:v1.9.5
Harbor
docker tag projects.registry.vmware.com/tkg/packages/standard/harbor:v2.7.1_vmware.1-tkg.1 harbordomain.com/tanzu-packages/harbor:v2.7.1
Weitergeben der Standardpaket-Images an die private Harbor-Registrierung
Geben Sie die Images mit der folgenden Syntax weiter.
docker push harbordomain.com/tanzu-packages/PACKAGE
Dabei gilt:
- harbordomain.com ist der DNS-Name Ihres Harbor-Servers.
- tanzu-packages ist der Name des Harbor-Projekts.
- PACKAGE ist der Name des Tanzu-Pakets.
- vX.X.X ist die Tag-Version des Pakets.
Cert Manager
docker push harbordomain.com/tanzu-packages/cert-manager:v1.7.2
Contour mit Envoy
docker push harbordomain.com/tanzu-packages/contour:v1.23.5
ExternalDNS
docker push harbordomain.com/tanzu-packages/external-dns:v0.12.2
Prometheus mit Alertmanager
docker push harbordomain.com/tanzu-packages/prometheus:v2.37.0
Grafana
docker push harbordomain.com/tanzu-packages/grafana:v7.5.17
Fluent Bit
docker push harbordomain.com/tanzu-packages/fluent-bit:v1.9.5
Harbor
docker push harbordomain.com/tanzu-packages/harbor:v2.7.1
Nachdem Sie die Images an die private Harbor-Registrierung weitergegeben haben, stellen Sie sicher, dass jedes Image in der Harbor-Webschnittstelle angezeigt wird.
Abrufen eines Container-Images für die Bereitstellung
Um zu überprüfen, ob sich die Images in der privaten Harbor-Registrierung befinden, rufen Sie ein Image mit der folgenden Syntax von dort ab:
docker pull harbordomain.com/tanzu-packages/PACKAGE:TAG
Beispiel:
docker pull harbordomain.com/tanzu-packages/fluent-bit:v1.9.5
Sie können cURL verwenden, um die Harbor-API aufzurufen und die Pakete aufzulisten. Laden Sie dazu das Harbor-Zertifikat über die Harbor-Webschnittstelle herunter und führen Sie dann den folgenden Befehl aus:
curl -X 'GET' 'https://harbordomain.com/api/v2.0/projects/tanzu-packages/repositories?page=1&page_size=-1' -H 'accept: application/json' --cacert ca.crt | jq '.[].name'
Der Befehl gibt die verfügbaren tanzu-packages zurück.
"tanzu-packages/harbor" "tanzu-packages/fluent-bit" "tanzu-packages/grafana" "tanzu-packages/prometheus" "tanzu-packages/external-dns" "tanzu-packages/contour" "tanzu-packages/cert-manager"