Compartir comentarios
Las respuestas se generan en base a la documentación.

Exportadores OCI y Docker

El exportador oci genera el resultado de la compilación en un archivo tar con el formato distribución de imagen OCI (OCI image layout). El exportador docker funciona de la misma manera, excepto que exporta una distribución de imagen de Docker en su lugar.

El controlador docker no admite estos exportadores. Debes utilizar docker-container u otro controlador si deseas generar estas salidas.

Sinopsis

Compila una imagen de contenedor utilizando los exportadores oci y docker:

$ docker buildx build --output type=oci[,parameters] .
$ docker buildx build --output type=docker[,parameters] .

La siguiente tabla describe los parámetros disponibles:

ParámetroTipoPredeterminadoDescripción
nameStringEspecifica los nombres de las imágenes
destStringRuta
tartrue,falsetrueEmpaqueta la salida en un archivo tar
compressionuncompressed,gzip,estargz,zstdgzipTipo de compresión, consulta compresión
compression-level0..22Nivel de compresión, consulta compresión
force-compressiontrue,falsefalseFuerza la aplicación de la compresión, consulta compresión
oci-mediatypestrue,falseUtiliza tipos de medio OCI en los manifiestos del exportador. El valor predeterminado es true para type=oci y false para type=docker. Consulta Tipos de medio OCI
annotation.<key>StringAdjunta una anotación con la respectiva clave y valor a la imagen compilada, consulta anotaciones
rewrite-timestamptrue,falsefalseReestablece las marcas de tiempo de los archivos al valor de SOURCE_DATE_EPOCH. Consulta reproducibilidad de compilación para saber cómo especificar el valor de SOURCE_DATE_EPOCH.

Anotaciones

Estos exportadores admiten añadir anotaciones OCI utilizando el parámetro annotation, seguido del nombre de la anotación usando la notación de punto. El siguiente ejemplo establece la anotación org.opencontainers.image.title:

$ docker buildx build \
    --output "type=<type>,name=<registry>/<image>,annotation.org.opencontainers.image.title=<title>" .

Para obtener más información sobre las anotaciones, consulta la documentación de BuildKit.

Lectura adicional

Para obtener más información sobre los exportadores oci o docker, consulta el README de BuildKit.