imgpkg
(pronunciado: "paquete de imágenes") es una herramienta que permite a los usuarios almacenar un conjunto de archivos arbitrarios como una imagen OCI. Uno de los casos de uso más importantes es almacenar la configuración de Kubernetes (YAML simple, plantillas de ytt, plantillas de Helm, etc.) en el registro OCI como una imagen.
El concepto principal de imgpkg es un paquete, que es una imagen OCI que contiene 0+ archivos arbitrarios y 0+ referencias a imágenes OCI dependientes. Con este concepto, imgpkg puede copiar paquetes y sus imágenes dependientes entre registros (tanto en línea como fuera de línea).
$ 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
Características:
Carvel es mejor gracias a nuestros contribuyentes y mantenedores. Es gracias a usted que podemos ofrecer un excelente software a la comunidad. Únase a nosotros durante nuestras reuniones comunitarias en línea. Los detalles se pueden encontrar en nuestro sitio web de Carvel.
Puede chatear con nosotros en Kubernetes Slack en el canal #carvel y seguirnos en Twitter en @carvel_dev.
Vea qué organizaciones utilizan y contribuyen a Carvel: lista de adoptantes
Construye el código con
./hack/build.sh
Ejecute todas las pruebas con un registro local (requiere Docker)
./hack/test-all-local-registry.sh 5000
Si desea utilizar un registro de proxy para extraer imágenes a fin de evitar la limitación de velocidad de Dockerhub, configure la variable de entorno DOCKERHUB_PROXY en ese proxy, por ejemplo:
export DOCKERHUB_PROXY= < my-registry.local.sometld/my-dockerhub-proxy > && ./hack/test-all-local-registry.sh 5000
Para mantener actualizada la documentación del código fuente, imgpkg utiliza godoc. Para documentar un tipo, variable, constante, función o paquete, escriba un comentario regular directamente antes de su declaración que comience con el nombre del elemento que describe. Vea el paquete de registro para ver un ejemplo. Al contribuir con nuevo código fuente a través de un PR, el linter de acción de GitHub garantizará que los documentos godocs se incluyan en los cambios.
Para ver los documentos
go install golang.org/x/tools/cmd/godoc@latest
godoc -http=:6060
y visite http://localhost:6060/pkg/carvel.dev/imgpkg/
.