imgpkg
(ausgesprochen: „Image-Paket“) ist ein Tool, mit dem Benutzer eine Reihe beliebiger Dateien als OCI-Image speichern können. Einer der treibenden Anwendungsfälle ist das Speichern der Kubernetes-Konfiguration (einfaches YAML, YTT-Vorlagen, Helm-Vorlagen usw.) in der OCI-Registrierung als Image.
Das Hauptkonzept von imgpkg ist ein Bundle, bei dem es sich um ein OCI-Image handelt, das mehr als 0 beliebige Dateien und mehr als 0 Verweise auf abhängige OCI-Images enthält. Mit diesem Konzept ist imgpkg in der Lage, Bundles und ihre abhängigen Images über Registrierungen hinweg (sowohl online als auch offline) zu kopieren.
$ imgpkg push -b your-user/app1-config:0.1.1 -f config/
$ imgpkg copy -b your-user/app1-config:0.1.1 --to-repo other-user/app1
$ imgpkg pull -b your-user/app1-config:0.1.1 -o /tmp/app1-config
$ imgpkg tag ls -i your-user/app1-config
Merkmale:
Carvel ist dank unserer Mitwirkenden und Betreuer besser. Dank Ihnen können wir der Community großartige Software anbieten. Bitte nehmen Sie an unseren Online-Community-Treffen teil. Einzelheiten finden Sie auf unserer Carvel-Website.
Sie können mit uns auf Kubernetes Slack im #carvel-Kanal chatten und uns auf Twitter unter @carvel_dev folgen.
Sehen Sie sich an, welche Organisationen Carvel: Adopter's List nutzen und dazu beitragen
Erstellen Sie den Code mit
./hack/build.sh
Führen Sie jeden Test mit einer lokalen Registrierung aus (erfordert Docker)
./hack/test-all-local-registry.sh 5000
Wenn Sie eine Proxy-Registrierung zum Abrufen von Bildern verwenden möchten, um eine Ratenbegrenzung durch Dockerhub zu vermeiden, legen Sie die Umgebungsvariable DOCKERHUB_PROXY auf diesen Proxy fest, z. B.:
export DOCKERHUB_PROXY= < my-registry.local.sometld/my-dockerhub-proxy > && ./hack/test-all-local-registry.sh 5000
Um die Dokumentation des Quellcodes auf dem neuesten Stand zu halten, verwendet imgpkg godoc. Um einen Typ, eine Variable, eine Konstante, eine Funktion oder ein Paket zu dokumentieren, schreiben Sie direkt vor der Deklaration einen regulären Kommentar, der mit dem Namen des Elements beginnt, das er beschreibt. Ein Beispiel finden Sie im Registrierungspaket. Wenn Sie neuen Quellcode über eine PR beisteuern, stellt der GitHub Action-Linter sicher, dass Godocs in die Änderungen einbezogen werden.
Um die Dokumente anzuzeigen
go install golang.org/x/tools/cmd/godoc@latest
godoc -http=:6060
und besuchen Sie http://localhost:6060/pkg/carvel.dev/imgpkg/
.