Notas de la versión de Docker Engine versión 29
Esta página describe los cambios más recientes, adiciones, problemas conocidos y correcciones para la versión 29 de Docker Engine.
Para obtener más información sobre:
- Características depreciadas y eliminadas, consulta Características del motor depreciadas.
- Cambios en la API del motor, consulta el Historial de versiones de la API del motor.
29.5.1
2026-05-18Para obtener una lista completa de las solicitudes de extracción (pull requests) y los cambios en esta versión, consulta los hitos (milestones) correspondientes en GitHub:
Seguridad
Esta versión incluye correcciones para múltiples vulnerabilidades de seguridad que afectan a Docker Engine.
CVE-2026-41567 Corregir una vulnerabilidad en
docker cppor la cual los binarios de descompresión de archivos (p. ej.,xz,unpigz) se resolvían a través de la variablePATHdentro del sistema de archivos del contenedor mientras se ejecutaba con privilegios de root del host, permitiendo a un contenedor malicioso ejecutar binarios arbitrarios con privilegios de root del host.
GHSA-x86f-5xw2-fm2rCVE-2026-41568 Corregir una vulnerabilidad TOCTOU en
docker cpque permitía a un proceso de contenedor crear archivos o directorios en ubicaciones arbitrarias del sistema de archivos del host.
GHSA-vp62-88p7-qqf5CVE-2026-42306 Corregir una vulnerabilidad TOCTOU en
docker cpque permitía a un proceso de contenedor redirigir un montaje bind a una ubicación arbitraria en el sistema de archivos del host.
GHSA-rg2x-37c3-w2rh
Redes
- Corregir que las entradas de conntrack UDP no se eliminaran cuando no estaban asociadas a una dirección IP específica. moby/moby#52640
29.5.0
2026-05-14Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
NoteSin privilegios (Rootless):
gvisor-tap-vsockes ahora el nuevo controlador de red sin privilegios predeterminado y debe preferirse sobreslirp4netns, el cual ya no se instala a través del empaquetado de Docker.
Nuevas características
- Sin privilegios (Rootless): Añadir el nuevo controlador de red predeterminado
gvisor-tap-vsock. moby/moby#52319 - Habilitar el espacio de nombres de tiempo (time namespace) privado para contenedores por defecto en kernels compatibles. moby/moby#52326
- El controlador de registro de logs
localahora tiene soporte para atributos personalizados, añadiendo soporte para las opciones de loglabel,label-regex,env,env-regexytag. moby/moby#52348 - Windows: El daemon ahora admite escuchar en un socket Unix (
-H unix://...), con control de acceso opcional basado en grupos mediante--group. moby/moby#52365
Seguridad
- CVE-2026-32288: Corregir una denegación de servicio por la cual la descarga de una imagen modificada con fines maliciosos podía causar que el daemon asignara memoria ilimitada al procesar archivos tar dispersos. GHSA-x4jj-h2v8-hqqv. moby/moby#52478
Correcciones de errores y mejoras
docker ps --formatahora admite un marcador de posición.HealthStatuspara imprimir el estado de salud del contenedor (starting,healthy,unhealthy) como un campo dedicado. docker/cli#6913- Añadir la bandera de característica
time-namespacespara desactivar los espacios de nombres de tiempo. moby/moby#52577 - Integración de containerd: Corregir que las solicitudes de tokens de autenticación ignoraran los ajustes TLS por host (CAs personalizadas, registros no seguros). moby/moby#52600
- Los eventos de recarga de configuración del daemon ahora indican que la recarga se ha completado por completo. moby/moby#52589
- Exponer datos de diagnóstico sobre el proxy userland en
docker info. moby/moby#52321 - Corregir
docker image ls --filter reference=...(GET /images/json) para que también coincida con nombres de imagen canónicos completamente calificados (p. ej.,docker.io/library/alpine), no solo con la forma corta familiar. moby/moby#52333 - Corregir un error por el cual salir de un swarm con autolock habilitado podía dejar un estado huérfano, haciendo que el inicio del swarm posterior fallara con "Swarm is encrypted and needs to be unlocked". moby/moby#52479
- Corregir un problema por el cual los errores de registro de logs aparecían como cadenas vacías en el log del daemon en lugar del mensaje que no se pudo escribir. moby/moby#52442
- Corregir informes incorrectos de SHARED SIZE y UNIQUE SIZE en
docker system df -val incluir blobs de contenido compartido en el cálculo del tamaño. moby/moby#52482 - Corregir el soporte para especificaciones CDI que solicitan IDs de grupo adicionales. moby/moby#52579
- Corregir que los montajes de archivos de subruta de volumen sobre un archivo existente en la imagen fallaran en la creación del contenedor con "not a directory". moby/moby#52584
- Ordenar etiquetas en los formateadores de
volume,network,configysecretpara obtener salidas deterministas. docker/cli#6954 - Swarm: Evitar la corrupción de las instantáneas (snapshots) de Raft cuando el estado del swarm es grande. moby/moby#52441
Actualizaciones de empaquetado
- Actualizar BuildKit a v0.30.0. moby/moby#52618
- Actualizar el entorno de ejecución de Go a 1.26.3. moby/moby#52572, docker/cli#6967
Redes
- Corregir que las entradas de conntrack se eliminaran incorrectamente para contenedores UDP que comparten el mismo puerto en diferentes IPs cuando se reinicia un contenedor. moby/moby#52423
- Corregir que los registros DNS VIP obsoletos para los alias de red del servicio de swarm no se eliminaran durante las actualizaciones continuas. moby/moby#52236
- Corregir que el proxy userland descarte silenciosamente datagramas UDP cuando una escritura anterior en un backend no disponible dejaba un error ECONNREFUSED obsoleto en el socket. moby/moby#52483
- Sin privilegios (Rootless): Soportar adecuadamente
--net=hosty registros locales. moby/moby#47103
Sin privilegios (Rootless)
- Sin privilegios (Rootless): Considerar
$XDG_CONFIG_HOME/cdiy$XDG_RUNTIME_DIR/cdial buscar dispositivos CDI. moby/moby#51624 - Actualizar RootlessKit a v3.0.0. moby/moby#52319
SDK de Go
- cli/config/configfile:
GetAuthConfig,GetCredentialsStore: normalizar el nombre de host al resolver la autenticación. docker/cli#6846
Depreciaciones
- cli/command/image/build: eliminar la constante depreciada
DefaultDockerfileName. docker/cli#6737 - cli/command/image/build: eliminar la utilidad depreciada
DetectArchiveReader. docker/cli#6737 - cli/command/image/build: eliminar la utilidad depreciada
IsArchive. docker/cli#6737 - cli/command/image/build: eliminar la utilidad depreciada
ResolveAndValidateContextPath. docker/cli#6737 - cli/command/image/build: eliminar la utilidad depreciada
WriteTempDockerfile. docker/cli#6737
29.4.3
2026-05-06Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Seguridad
CVE-2026-31431: Reemplazar la denegación de seccomp socketcall(2) que rompía los programas de 32 bits con reglas dirigidas de AppArmor (denegar red alg) y SELinux (alg_socket) que bloquean AF_ALG en la capa LSM, cubriendo tanto las rutas de socket(2) como de socketcall(2) sin interrumpir las cargas de trabajo legítimas de 32 bits. moby/moby#52537
En sistemas basados en SELinux, la mitigación de SELinux requiere que el daemon se configure con
selinux-enabled: true(a través dedaemon.jsono la bandera de CLI--selinux-enabled). Esta opción no está habilitada por defecto.Corregir que el perfil AppArmor predeterminado no se actualice al reiniciar el daemon, requiriendo un reinicio del sistema para aplicar los cambios del perfil de las actualizaciones del daemon. moby/moby#52537
29.4.2
2026-05-01Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Seguridad
Esta versión incluye mejoras de seguridad para CVE-2026-31431.
- Bloquear sockets
AF_ALGy el multiplexorsocketcall(2)en el perfil seccomp predeterminado para evitar escaladas de privilegios dentro del contenedor a través de la API criptográfica del kernel ("Copy Fail"). moby/moby#52501
Problemas conocidos
Estas restricciones pueden romper programas de 32 bits e imágenes i386, incluyendo SteamCMD y algunas cargas de trabajo basadas en Wine. moby/moby#52506
Solución temporal
WarningNo utilices
--security-opt seccomp=unconfinedpara solucionar este problema.
No utilices el perfilseccomp/v0.2.0.
Si necesitas una solución temporal, utiliza el perfil seccomp/v0.2.1 de moby/profiles.
Asegúrate de utilizar un kernel que incluya la corrección para CVE-2026-31431.
Este perfil desbloquea socketcall mientras mantiene AF_ALG bloqueado para socket.
ImportantUtiliza esta solución alternativa solo para contenedores que la requieran.
Los contenedores que utilizan este perfil aún pueden explotar CVE-2026-31431 a través de la llamada al sistemasocketcall.
Descarga el perfil seccomp/v0.2.1:
$ curl -fsSL https://raw.githubusercontent.com/moby/profiles/refs/tags/seccomp/v0.2.1/seccomp/default.json \
-o /etc/docker/seccomp-profile-v0.2.1.json
Utiliza una de estas opciones. No necesitas ambas.
- Para usar el perfil en un contenedor específico cuando controlas el comando
docker run, utiliza--security-opt:
$ docker run --security-opt seccomp=<path> ...
- Para usar el perfil como predeterminado para los contenedores creados por el daemon, añade
seccomp-profilea tudaemon.json:
{
"seccomp-profile": "/etc/docker/seccomp-profile-v0.2.1.json"
}29.4.1
2026-04-20Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Correcciones de errores y mejoras
- Almacén de imágenes de containerd: Corregir que
docker image prune --filter label!=key=valueomitiera incorrectamente las imágenes que no tienen la etiqueta especificada. moby/moby#52338 - Corregir que
--log-opt "tag={{.ImageID}}"no eliminara el algoritmo del resumen (digest). moby/moby#52343 - Corregir fallos intermitentes al iniciar contenedores (error
EBUSYal volver a montar secretos/configuraciones) en nodos de Swarm ocupados reintentando el nuevo montaje de solo lectura. moby/moby#52235
Actualizaciones de empaquetado
- Actualizar containerd (solo binarios estáticos) a v2.2.3. moby/moby#52360
- Actualizar el entorno de ejecución de Go a 1.26.2. docker/cli#6920, moby/moby#52329
Redes
- Si un contenedor tiene un endpoint de solo IPv4 o de solo IPv6 con mayor "prioridad de puerta de enlace" que un endpoint de pila dual (dual stack), el endpoint de pila única ahora se utilizará como puerta de enlace predeterminada para su familia de direcciones. moby/moby#52328
29.4.0
2026-04-07Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Correcciones de errores y mejoras
- docker cp: reportar tanto el tamaño del contenido como el tamaño transferido. docker/cli#6800
- Corregir que
docker stats --allsiga mostrando contenedores que fueron eliminados. docker/cli#6863 - Corregir un error raro que podía causar que los contenedores no se pudieran eliminar. moby/moby#51724
- Corregir que los contenedores con privilegios perdieran su perfil AppArmor explícito (
--security-opt apparmor=<profile>) tras el reinicio del contenedor. moby/moby#52215 - Mejorar el manejo de la salida de contenedores duplicados utilizando el estado de tarea activo de containerd (no marcas de tiempo). moby/moby#52156
- Mejorar el rendimiento de la descarga y subida de imágenes habilitando HTTP keep-alive para conexiones de registro, evitando apretones de manos TCP y TLS redundantes. moby/moby#52198
- Completados de la terminal: añadir completado para
docker rm --linky excluir enlaces heredados para nombres de contenedor. docker/cli#6872 - Completados de la terminal: no proporcionar completados que ya se hayan utilizado. docker/cli#6871
- Actualizar runc (en binarios estáticos) a v1.3.5. moby/moby#52244
- Windows: Corregir que
DOCKER_TMPDIRno se respetara. moby/moby#52181
Actualizaciones de empaquetado
- Actualizar BuildKit a v0.29.0. moby/moby#52272
Redes
- Evitar una caída del daemon durante el inicio después de actualizar si la configuración de un contenedor tiene una dirección IP con formato incorrecto. moby/moby#52275
Go SDK
- cli/streams: Out, In: conservar el os.File original cuando esté disponible. docker/cli#6906
- Actualizar la versión mínima de Go a go1.25. docker/cli#6897
Depreciaciones
- SDK de Go: cli-plugins/hooks: depreciar
HookMessagey renombrar acli-plugins/hooks.Response. docker/cli#6859 - SDK de Go: cli-plugins/hooks: depreciar
HookTypey renombrar acli-plugins/hooks.ResponseType. docker/cli#6859 - SDK de Go: cli-plugins/manager: depreciar
HookPluginDatay mover acli-plugins/hooks.Request. docker/cli#6859
29.3.1
2026-03-25Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Seguridad
Esta versión incluye correcciones para múltiples vulnerabilidades de seguridad que afectan a Docker Engine y componentes relacionados.
CVE-2026-34040 Corregir una elusión de autorización en los plugins de AuthZ que podría permitir saltarse los plugins de autorización bajo condiciones específicas. GHSA-x744-4wpc-v9h2
CVE-2026-33997 Corregir un fallo en
docker plugin installpor el cual la validación de privilegios se podía eludir parcialmente, lo que potencialmente podía llevar a una escalada de privilegios no autorizada. GHSA-pxq6-2prw-chj9CVE-2026-33748 Corregir una validación insuficiente de fragmentos de URL de Git
#ref:subdiren BuildKit, lo que podría permitir el acceso a archivos fuera del alcance del repositorio previsto. GHSA-4vrq-3vrq-g6ggCVE-2026-33747 Corregir una vulnerabilidad en BuildKit por la cual un frontend no confiable podía provocar que se escribieran archivos fuera del directorio de estado de BuildKit. GHSA-3c29-8rgm-jvjj
Correcciones de errores y mejoras
- Corregir una caída del daemon durante docker build si
.dockerignorecontenía un patrón no válido. moby/moby#52214 - Corregir un pánico cuando el cliente de containerd utiliza un flujo cerrado. moby/moby#52211
Actualizaciones de empaquetado
- Actualizar containerd (binarios estáticos) a v2.2.2. moby/moby#52213
- Actualizar el entorno de ejecución de Go a 1.25.8. moby/moby#52210, docker/cli#6883
Go SDK
- Añadir etiqueta de compilación faltante, que podía causar el error
cannot range over 10 (untyped int constant)al importar el paquetecli/command. docker/cli#6884
29.3.0
2026-03-05Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Nuevas características
- Añadir la opción
bind-create-srca la bandera--mountpara montajes bind. docker/cli#6792 - Los hooks de plugins de CLI ahora se disparan al fallar el comando (no solo al tener éxito), y los plugins pueden usar "error-hooks" para mostrar sugerencias solo cuando los comandos fallan. docker/cli#6794
- Reducir la versión mínima de la API de v1.44 a v1.40 (Docker 19.03). moby/moby#52067
Actualizaciones de empaquetado
- Actualizar BuildKit a v0.28.0. moby/moby#52135
Redes
- Corregir la corrupción de la configuración de DNS al recargar el daemon. moby/moby#52060
API
POST /networks/{id}/connectahora aplica correctamente el campoMacAddressenEndpointSettings. Este campo se añadió en la API v1.44, pero anteriormente se ignoraba. moby/moby#52040GET /images/jsonahora admite un parámetro de consultaidentity. Cuando se establece, la respuesta incluye resúmenes de manifiestos y puede incluir un campoIdentitypara cada manifiesto con información de identidad y origen de confianza. moby/moby#52030
Correcciones de errores y mejoras
- La opción
--gpusahora utiliza la inyección basada en CDI para GPUs AMD. moby/moby#52048 - Añadir notificaciones de
sd_notify"RELOADING" al indicar al daemon que recargue su configuración. moby/moby#52041 - Enviar
sd_notify"READY" y "STOPPING" síncronamente para asegurar que se envíen antes de proceder. moby/moby#52041 - Añadir soporte para el protocolo de recarga de servicios systemd 253
Type=notify-reload. moby/moby#52041 - No registrar advertencias de "failed to determine if container is already mounted" para contenedores detenidos durante el inicio. moby/moby#52076
- Corregir que
docker system prunefalle con "rw layer snapshot not found" cuando un contenedor se elimina concurrentemente. moby/moby#52090 - Corregir un pánico al ejecutar
docker topen un contenedor de Windows que no está en ejecución. moby/moby#52025 - Corregir una regresión en la v29.2.0 que impedía registrar el servicio dockerd en Windows si los requisitos del sistema aún no estaban instalados. moby/moby#52006
- Corregir la detección de montaje compartido para rutas montadas varias veces, lo que causaba errores de "not a shared mount" al usar la propagación bind. moby/moby#51787
- Corregir advertencia falsa de "ShouldRestart failed" al apagar. moby/moby#52079
- Preservar los espacios en blanco iniciales y finales al almacenar las contraseñas del registro. docker/cli#6784
- Evitar registrar advertencias de "no encontrado" al calcular el tamaño de los volúmenes. moby/moby#52018
- Actualizar el entorno de ejecución de Go a 1.25.7. moby/moby#52003, docker/cli#6780
29.2.1
2026-02-02Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Correcciones de errores y mejoras
- Actualizar BuildKit a v0.27.1. moby/moby#51962
- Corregir que
docker system dffalle al ejecutarse concurrentemente condocker system prune. moby/moby#51979 - Corregir el manejo del daemon de eventos de salida de contenedor duplicados para evitar limpiezas repetidas y transiciones de estado. moby/moby#51925
- Corregir el pánico tras un inicio fallido del daemon. moby/moby#51943
- Corregir que las redes overlay cifradas no pasen tráfico a los contenedores en Engines v28 y anteriores. Las redes overlay cifradas ya no pasarán tráfico a contenedores en las versiones v29.2.0 a v29.0.0, v28.2.2, v25.0.14 o v25.0.13. moby/moby#51951
- Corregir un posible pánico en
docker network prune. moby/moby#51966
29.2.0
2026-01-26Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Nuevas características
docker infoincluye ahora la secciónNRI. docker/cli#6710- Añadir soporte NRI experimental. moby/moby#51711, moby/moby#51712, moby/moby#51675, moby/moby#51674, moby/moby#51636, moby/moby#51634
- Se ha añadido el nuevo campo
Identityal endpoint de inspección para mostrar información de origen de confianza sobre la imagen. Esto incluye la referencia de construcción para imágenes construidas localmente, el repositorio del registro remoto para imágenes descargadas e información de firma verificada para imágenes que contienen una atestación de procedencia firmada válida. moby/moby#51737
Correcciones de errores y mejoras
- Mejorar la validación de las opciones de línea de comandos
--detach-keys. docker/cli#6742 - Evitar un pánico potencial al apagar el daemon tras un inicio incompleto. moby/moby#51797
- Eliminar la restricción sobre los volúmenes de solo lectura anónimos. moby/moby#51682
- La bandera
--validateen dockerd verifica ahora también los requisitos del sistema, lo que permite comprobar los requisitos del sistema antes de iniciar el daemon. moby/moby#51868 - Manejar las solicitudes de
--gpuspara dispositivos NVIDIA utilizando CDI si es posible. moby/moby#50228
Actualizaciones de empaquetado
- Actualizar BuildKit a v0.27.0. moby/moby#51886
- Actualizar containerd (solo binarios estáticos) a v2.2.1. moby/moby#51765
Sin privilegios (Rootless)
- Sin privilegios (Rootless): Considerar
$XDG_CONFIG_HOME/cdiy$XDG_RUNTIME_DIR/cdial buscar dispositivos CDI. moby/moby#51624 - Actualizar RootlessKit a v2.3.6. moby/moby#51757
API
- Soportar gRPC de forma nativa en el socket de escucha. moby/moby#50744
Go SDK
- cli/command: añadir la opción
WithAPIClientOptions. docker/cli#6740
Depreciaciones
- Eliminar
%PROGRAMDATA%\Docker\cli-pluginsde la lista de rutas utilizadas para plugins de la CLI en Windows. Esta ruta estaba presente por compatibilidad con instalaciones antiguas, pero fue reemplazada por%ProgramFiles%\Docker\cli-plugins. docker/cli#6713
29.1.5
2026-01-16Para obtener una lista completa de las solicitudes de extracción (pull requests) y los cambios en esta versión, consulta los hitos (milestones) correspondientes en GitHub:
Actualizaciones de empaquetado
- Actualizar el entorno de ejecución de Go a 1.25.6. moby/moby#51860, docker/cli#6750
Redes
- Se corrigió una regresión por la cual las conexiones de red establecidas podían verse interrumpidas durante el período de gracia de apagado de un contenedor. moby/moby#51843
29.1.4
2026-01-08Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Correcciones de errores y mejoras
- Corregir el pánico de
docker run --network noneen Windows. moby/moby#51830 - Corregir que los montajes de imagen fallen con "file name too long" para rutas de montaje largas. moby/moby#51829
- Corregir la creación potencial de capas overlay2 huérfanas. moby/moby#51826, moby/moby#51824
Actualizaciones de empaquetado
- Actualizar BuildKit a v0.26.3. moby/moby#51821
29.1.3
2025-12-12Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Correcciones de errores y mejoras
- Añadir completado de la terminal para
docker stack deploy --compose-file. docker/cli#6690 - Almacén de imágenes de containerd: Corregir un error que causaba que
docker buildignorara la opción del exportador de imágenesunpackestablecida explícitamente. moby/moby#51514 - Corregir el manejo de imágenes huérfanas (dangling) de
docker image ls. docker/cli#6704 - Corregir un error que podía causar que el Engine dejara los contenedores con autoremove establecido en estado 'dead' al apagar, y nunca los reclamara. moby/moby#51693
- Corregir la compilación en i386. moby/moby#51528
- Corregir que la configuración explícita de graphdriver (
"storage-driver") sea tratada como containerd snapshotter cuando existe un estado de graphdriver previo. moby/moby#51516 - Corregir la creación potencial de capas overlay2 huérfanas. moby/moby#51703
Redes
- Permitir la creación de un contenedor con una dirección IP específica cuando sus redes no estaban configuradas con una subred específica. moby/moby#51583
- No fallar al iniciar un contenedor creado a través de la API antes de la actualización a la v29.1.2, con
PublishAlly un mapaPortBindingsnulo. moby/moby#51691 - Corregir un error que impedía la resolución de DNS de contenedores asociados a redes que no tienen el alcance de swarm una vez que el nodo se ha unido a un cluster de Swarm. moby/moby#51515
- Corregir un problema que causaba la caída del daemon al usar un plugin de controlador de red remoto. moby/moby#51558
- Corregir un problema que podía conducir a un error de "endpoint not found" al crear un contenedor con múltiples conexiones de red, cuando una de las redes no es interna pero no tiene su propia conectividad IP externa. moby/moby#51538
- Corregir un problema que impedía que se iniciara Docker rootless en un host con IPv6 deshabilitado. moby/moby#51543
- Devolver un error cuando un contenedor se crea con un mapeo de puertos que apunta al puerto de contenedor 0. moby/moby#51695
29.1.2
2025-12-02Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Seguridad
- Actualizar el entorno de ejecución de Go a 1.25.5. moby/moby#51648, docker/cli#6688
- Corrige una posible DoS a través del uso excesivo de recursos al formatear errores de validación de nombres de host CVE-2025-61729
- Corrige la aplicación incorrecta de las restricciones de subdominios excluidos para SANs comodín, lo que podría permitir certificados confiados incorrectamente CVE-2025-61727
Correcciones de errores y mejoras
- Almacén de imágenes de containerd: Corregir que
docker image inspectfallara al devolver los datos de imagen disponibles en caso de que no todos los blobs distribuibles estuvieran disponibles localmente. moby/moby#51629 - dockerd-rootless-setuptool.sh: corregir error
nsenter: no namespace specified. moby/moby#51622 - Corregir que
docker system dfmuestreN/Apara el tamaño compartido y el tamaño único al utilizar graph-drivers como almacenamiento. moby/moby#51631
Actualizaciones de empaquetado
- Actualizar runc (en binarios estáticos) a v1.3.4. moby/moby#51633
Redes
- Corregir un error que impedía los mapeos de puertos en modo rootless cuando se utiliza slirp4netns. moby/moby#51616
- Evitar una caída al realizar una solicitud a la API con
HostConfig.PublishAllPortsestablecido (-P), y sin asociaciones de puertos. moby/moby#51621
29.1.1
2025-11-28Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Redes
- Revertir un PR que rompía la resolución de DNS externa en todas las redes bridge personalizadas. moby/moby#51615
29.1.0
2025-11-27Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Actualizaciones de empaquetado
- Actualizar BuildKit a v0.26.1. moby/moby#51551
- Actualizar el binario containerd a v2.2.0 (binarios estáticos). moby/moby#51271
Redes
- No sobrescribir el archivo
/etc/resolv.confmodificado por el usuario a lo largo de los reinicios de los contenedores. moby/moby#51507 - Corregir
--publish-all/-Ppara contenedores de Windows. moby/moby#51586 - Corregir un problema que impedía el reinicio del contenedor o la reconexión de red cuando fallaba la configuración de la puerta de enlace durante la detención del contenedor o la desconexión de red. moby/moby#51592
- Contenedores de Windows: no mostrar una dirección IPv4 asignada a IPv6 en las asociaciones de puertos. Por ejemplo,
[::ffff:0.0.0.0]:8080->80/tcpen lugar de0.0.0.0:8080->80/tcp. moby/moby#51587
29.0.4
2025-11-24Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Correcciones de errores y mejoras
docker image lsya no trunca los nombres de las imágenes. docker/cli#6675
Redes
- Permitir la creación de un contenedor con una dirección IP específica cuando sus redes no estaban configuradas con una subred específica. moby/moby#51583
29.0.3
2025-11-24Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Correcciones de errores y mejoras
docker version --format json: restaurar el campo de nivel superiorBuildTimepara usar el formato RFC3339Nano. docker/cli#6668- Corregir que
docker image lsignore unimageFormatpersonalizado dedocker.json. docker/cli#6667
Redes
- Corregir un problema que causaba la caída del daemon al usar un plugin de controlador de red remoto. moby/moby#51558
29.0.2
2025-11-17Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Redes
- Corregir un problema que podía conducir a un error de "endpoint not found" al crear un contenedor con múltiples conexiones de red, cuando una de las redes no es interna pero no tiene su propia conectividad IP externa. moby/moby#51538
- Corregir un problema que impedía que se iniciara Docker rootless en un host con IPv6 deshabilitado. moby/moby#51543
29.0.1
2025-11-14Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
Correcciones de errores y mejoras
docker image lsya no trunca el ancho del nombre cuando la salida se redirige (p. ej., paragrep). docker/cli#6656docker image lsahora considera la variable de entornoNO_COLORpara elegir la salida coloreada. docker/cli#6654- Almacén de imágenes de containerd: Corregir un error que causaba que
docker buildignorara la opción del exportador de imágenesunpackestablecida explícitamente. moby/moby#51514 - Corregir un error que causaba que
docker image ls --allno mostrara imágenes huérfanas (dangling)/sin etiquetar. docker/cli#6657 - Corregir la compilación en i386. moby/moby#51528
- Corregir que la configuración explícita de graphdriver (
"storage-driver") sea tratada como containerd snapshotter cuando existe un estado de graphdriver previo. moby/moby#51516 - Corregir el formato de salida de los campos
ApiVersionyMinApiVersionendocker version --format=jsonpara alinearse con versiones anteriores. docker/cli#6648
Redes
- Corregir un error que impedía la resolución de DNS de contenedores asociados a redes que no tienen el alcance de swarm una vez que el nodo se ha unido a un cluster de Swarm. moby/moby#51515
29.0.0
2025-11-10Para obtener una lista completa de las solicitudes de extracción y los cambios en esta versión, consulta los hitos correspondientes en GitHub:
CautionEsta versión incluye varios cambios incompatibles y depreciaciones. Revisa las notas de la versión cuidadosamente antes de actualizar.
- El soporte experimental para nftables puede ahora habilitarse estableciendo la opción
firewall-backenddel daemon de Docker anftables. Para obtener más información, consulta la documentación de Docker Engine. - El almacén de imágenes de containerd es ahora el predeterminado para instalaciones nuevas. Esto no se aplica a los daemons configurados con
userns-remap(ver moby#47377).
Cambios incompatibles
- El módulo Go
github.com/docker/dockerestá depreciado en favor degithub.com/moby/moby/clientygithub.com/moby/moby/api. El módulogithub.com/moby/mobyse considera un detalle de implementación interno; los únicos módulos públicos soportados sonclientyapi. A partir de la v29, las versiones se etiquetan con el prefijodocker-(p. ej.,docker-v29.0.0). Esto solo afecta a los usuarios de módulos Go y a los mantenedores de paquetes. - El daemon requiere ahora la versión de la API
v1.44o posterior (Docker v25.0+). - Los paquetes de Debian armhf (32 bits) están dirigidos ahora a CPUs ARMv7 y no funcionarán en dispositivos ARMv6.
- Ya no se proporcionan paquetes oficiales de Raspbian (32 bits). Utiliza los paquetes Debian arm64 para dispositivos de 64 bits, o los paquetes Debian armhf para dispositivos ARMv7 de 32 bits.
- cgroup v1 está depreciado. El soporte continúa hasta al menos mayo de 2029, pero migra a cgroup v2 tan pronto como sea posible. Ver moby#51111.
- Docker Content Trust se eliminó de la CLI de Docker. Se puede compilar como un plugin independiente: https://github.com/docker/cli/blob/v29.0.0/cmd/docker-trust/main.go
Nuevas características
docker image loadydocker image saveadmiten ahora la selección de múltiples plataformas mediante la bandera--platform(p. ej.,docker image load --platform linux/amd64,linux/arm64 -i image.tar). docker/cli#6126docker image lsutiliza ahora la nueva vista (como--treepero colapsada) por defecto. docker/cli#6566docker run --runtime <...>está ahora soportado en Windows. moby/moby#50546GET /containers/jsonincluye ahora un campoHealthque describe el estado de la comprobación de estado del contenedor. moby/moby#50281- Añadir el derecho (entitlement)
devicea la configuración del constructor. moby/moby#50386 - Añadir soporte para las banderas
memory-swapymemory-swappinessa los comandosdocker service createydocker service update. docker/cli#6619 - Permitir que la CLI de Docker establezca la variable de entorno
GODEBUGcuando el par clave-valor ("GODEBUG":"...") existe dentro de los metadatos del contexto de Docker. docker/cli#6371
Correcciones de errores y mejoras
docker image ls --treeordena ahora las imágenes alfabéticamente por nombre en lugar de por fecha de creación. docker/cli#6595docker image lsya no muestra imágenes huérfanas (dangling) por defecto si no se proporciona la bandera--all. docker/cli#6574docker save: Corregir marcas de tiempo inconsistentes en los miembros del tar al exportar imágenes con el controlador de almacenamiento overlay2. moby/moby#51365- Añadir una nueva opción de logs para el controlador de logs fluentd (
fluentd-read-timeout), que permite especificar los tiempos de espera de lectura para leer confirmaciones (acks) de las conexiones de fluentd. moby/moby#50249 - Añadir completado de nombre de imagen para
docker images. docker/cli#6452 - Añadir completado en la terminal para
docker inspectsi se establece un--type. docker/cli#6444 - Añadir completado en la terminal para los subcomandos de
docker plugin. docker/cli#6445 - api/types/container: hacer que
ContainerState,HealthStatussean tipos concretos. moby/moby#51439 - El almacén de imágenes de containerd no está disponible temporalmente cuando la reasignación de userns está habilitada como solución temporal para moby#47377. moby/moby#51042
- contrib: eliminar
contrib/httpserver, que solo se utilizaba para pruebas de integración. moby/moby#50654 - daemon: mejorar la validación de la opción
--dnsy el correspondiente campo"dns"endaemon.json. moby/moby#50600 - dockerd-rootless.sh: si slirp4netns no está instalado, intentar usar pasta (passt). moby/moby#51149
- Corregir el fallo de
--mount type=imageal montar la misma imagen múltiples veces en destinos diferentes. moby/moby#50268 - Corregir que
docker stats <container>no salga de forma ordenada. docker/cli#6582 - Corregir un error que impedía que el servidor de la API se apagara rápidamente cuando hay una conexión abierta al endpoint
/events. moby/moby#51448 - Corregir un error por el cual la recolección de estadísticas del contenedor en modo "one-shot" no incluía el ID y el Nombre del contenedor. moby/moby#51302
- Corregir un problema por el cual todas las tareas nuevas en el Swarm podían quedar atascadas en el estado PENDING para siempre después de escalar un servicio con preferencias de ubicación. moby/moby#50202
- Corregir un problema por el cual los meta-encabezados personalizados no se pasaban cuando se utilizaba el almacén de imágenes de containerd. moby/moby#51024
- Corregir que las solicitudes no se registraran cuando se ejecuta el daemon con
--log-level=trace. moby/moby#50986 - Corregir que los servicios de Swarm queden inaccesibles desde los puertos publicados tras una recarga de firewalld. moby/moby#50443
- Mejorar los errores al fallar la conexión a la API para proporcionar más contexto al usuario. moby/moby#50285
- Mejorar el completado en la terminal para los subcomandos
docker secretydocker config. docker/cli#6446 - Preferir el nombre explícito del controlador de dispositivo sobre las capacidades de GPU al seleccionar el controlador de dispositivo con
docker run --gpus. moby/moby#50717 - Actualizar runc a v1.3.3. moby/moby#51393
- Actualizar la configuración interna TLS de SwarmKit para excluir suites de cifrado inseguras conocidas. moby/moby#51139
- Windows: Corregir que BuildKit cree contenedores cuyo modo de aislamiento sea inconsistente con la configuración del daemon. moby/moby#50942
Actualizaciones de empaquetado
client: eliminar conjuntos de cifrado CBC heredados de la configuración del cliente. moby/moby#50126
contrib: eliminar
editorconfigpor no tener mantenimiento. moby/moby#50607contrib: eliminar los archivos de resaltado de sintaxis de Dockerfile para
nanoy TextMate (tmbundle) por estar desactualizados y sin mantenimiento. moby/moby#50606contrib: eliminar los scripts
mkimage-xxxpor no tener mantenimiento ni pruebas. moby/moby#50297Si Docker se degrada a una versión que no tiene este soporte, la red quedará inservible, debiendo eliminarse y volver a crearse. moby/moby#50114
El controlador de red de overlay de Windows admite ahora la opción
--dns. moby/moby#51229Actualizar BuildKit a v0.25.2. moby/moby#51397
Actualizar containerd a v2.1.5. moby/moby#51409
containerd v2.1.5 utiliza ahora el
LimitNOFILEpredeterminado de systemd para los contenedores, cambiando el límite de descriptores de archivos abiertos (ulimit -n) de1048576a1024. Esto extiende a todos los contenedores un cambio introducido en Docker Engine v25.0 para los contenedores de compilación.Esto evita que los programas que ajustan su comportamiento basándose en ulimits consuman memoria excesiva cuando el límite se establece en
infinity. Los contenedores se comportan ahora de la misma manera que los programas que se ejecutan en el host.Si tu carga de trabajo necesita un límite superior, utiliza
--ulimitcondocker run, o establece los valores predeterminados en/etc/docker/daemon.json:{ "default-ulimits": { "nofile": { "Name": "nofile", "Soft": 1048576, "Hard": 1048576 } } }Para obtener más información, consulta moby#51485.
Actualizar el entorno de ejecución de Go a 1.25.4. moby/moby#51418, docker/cli#6632
Los usuarios pueden solicitar un tamaño de prefijo específico para las redes asignadas a partir de los pools predeterminados utilizando la dirección no especificada, por ejemplo
--subnet 0.0.0.0/24 --subnet ::/96. moby/moby#50114
Redes
- Añadir la opción de daemon
--bridge-accept-fwmark. Los paquetes con esta marca de cortafuegos serán aceptados por las redes bridge, anulando las reglas de "descarte" de iptables o nftables de Docker. moby/moby#50476 - api/types/system: depreciar los campos de nivel superior
DiskUsageen favor de campos específicos por tipo. moby/moby#51235 - Asegurar que los dispositivos bridge se eliminen cuando falle la creación de la red bridge. moby/moby#51147
- Asegurar que las redes Windows NAT se vuelvan a crear con sus etiquetas originales cuando se reinicie el motor. moby/moby#50447
- Las variables de entorno establecidas en un contenedor utilizando enlaces (links) heredados están depreciadas y ya no se añaden automáticamente. moby/moby#50719
- El daemon puede iniciarse con
DOCKER_KEEP_DEPRECATED_LEGACY_LINKS_ENV_VARS=1para recuperarlas. - Se anima a los usuarios a dejar de depender de ellas ya que están depreciadas, y la vía de escape se eliminará en una versión posterior.
- El daemon puede iniciarse con
- Corregir un error en NetworkDB que a veces causaba que las entradas quedaran atascadas como eliminadas en algunos de los nodos, provocando problemas de conectividad entre contenedores en redes overlay. moby/moby#50342
- Corregir un error que podía causar que el Engine y otro proceso del host se asociaran al mismo puerto UDP. moby/moby#50669
- Corregir un bloqueo mutuo que podía ocurrir si se procesaba una recarga de firewalld mientras el controlador de red bridge se estaba iniciando, o creando o eliminando una red, o creando asociaciones de puertos. moby/moby#50620
- Corregir un problema que impedía el inicio del contenedor o la selección de su puerta de enlace de red cuando IPv6 solo está desactivado en una interfaz específica. moby/moby#48971
- Para Linux,
docker inforeporta ahora el backend del cortafuegos si está disponible. docker/cli#6191 - Mejorar enormemente la confiabilidad de las redes overlay y de la malla de enrutamiento (routing mesh) de Swarm. moby/moby#50393
- Mejorar la tasa de convergencia de NetworkDB, parte del plano de gestión para redes overlay, después de ráfagas de actualizaciones. moby/moby#50193
- Mejorar la confiabilidad del controlador de red overlay. moby/moby#50260
- Control de errores mejorado para la conexión de un contenedor a una red. moby/moby#50945
- Redes macvlan e IPvlan-l2: no se configurará ninguna puerta de enlace predeterminada a menos que se incluya explícitamente un
--gatewayen la configuración de IPAM. Esto soluciona un problema que podía causar que fallara el inicio del contenedor en redes con la autoconfiguración de IPv6 habilitada. moby/moby#50929 - nftables: Docker no habilitará el reenvío de IP en el host. Si el reenvío es necesario para una red bridge, pero no está habilitado, el inicio del daemon o la creación de la red fallarán con un error. Debes habilitar el reenvío y asegurarte de que las reglas del cortafuegos estén implementadas para evitar el reenvío no deseado entre interfaces que no sean de Docker. O bien, utiliza la opción del daemon
--ip-forward=falsepara desactivar la comprobación, pero es posible que algunas funciones de la red bridge, incluido el reenvío de puertos, no funcionen. Consulta la documentación para obtener más información sobre la migración de iptables a nftables. moby/moby#50646 - Al iniciar el daemon, reiniciar los contenedores que comparten sus pilas de red antes que los contenedores que necesitan esas pilas. moby/moby#50327
- Los puertos publicados son ahora siempre accesibles en redes con modo de puerta de enlace "routed". Anteriormente, las reglas para abrir esos puertos solo se añadían cuando la red en modo routed se seleccionaba como la puerta de enlace predeterminada del contenedor. moby/moby#50140
- Desde la versión 28.0.0, una regla de alteración (mangle) de
iptablespara el cálculo de suma de comprobación de SCTP solo se añadía si la variable de entornoDOCKER_IPTABLES_SCTP_CHECKSUM=1estaba establecida. La regla ha sido eliminada y la variable de entorno ya no tiene efecto. moby/moby#50539 - Las reglas de iptables para redes bridge han sido actualizadas, incluyendo la eliminación de las cadenas
DOCKER-ISOLATION-STAGE-1yDOCKER-ISOLATION-STAGE-2. Con estos cambios: moby/moby#49981- Los contenedores pueden acceder ahora a puertos publicados en direcciones del host por contenedores en otras redes cuando el proxy userland no se está ejecutando.
- Los contenedores pueden acceder ahora a puertos en direcciones de contenedores en otras redes que tienen el modo de puerta de enlace "nat-unprotected".
- Al enlazarse dinámicamente, el daemon de Docker depende ahora de libnftables. moby/moby#51033
- Windows:
network inspect: el nombre de la red HNS se reporta ahora en la opcióncom.docker.network.windowsshim.networknameen lugar del nombre de la red Docker, el cual solo se reportaba tras un reinicio del daemon. moby/moby#50961 - Windows: al restaurar redes al reiniciar el daemon, conservar su asociación con controladores IPAM no predeterminados. moby/moby#50649
API
- La API de
eventsreporta ahora el tipo de contenido comoapplication/x-ndjsonpara el flujo de eventos JSON delimitados por nuevas líneas. moby/moby#50953 GET /images/{name}/getyPOST /images/loadaceptan ahora múltiples parámetros de consultaplatform, permitiendo la exportación y carga de imágenes para múltiples plataformas. moby/moby#50166GET /images/{name}/jsonomite ahora los siguientes campos si su valor está vacío:Parent,Comment,DockerVersion,Author. moby/moby#51072GET /images/{name}/json: omitir campos deConfigvacíos cuando no estén establecidos. moby/moby#50915POST /images/{name:}/push: eliminar la compatibilidad con auth-config en el cuerpo de la API v1.4. moby/moby#50371- Añadir soporte para la agresividad de intercambio de memoria (memory swappiness) en servicios de Swarm. moby/moby#51114
GET /servicesdevuelve ahora los camposSwapBytesyMemorySwappinesscomo parte de los requisitos deResource.GET /services/{id}devuelve ahora los camposSwapBytesyMemorySwappinesscomo parte de los requisitos deResource.POST /services/createacepta ahora los camposSwapBytesyMemorySwappinesscomo parte de los requisitos deResource.POST /services/{id}/updateacepta ahora los camposSwapBytesyMemorySwappinesscomo parte de los requisitos deResource.GET /tasksdevuelve ahora los camposSwapBytesyMemorySwappinesscomo parte de los requisitos deResource.GET /tasks/{id}devuelve ahora los camposSwapBytesyMemorySwappinesscomo parte de los requisitos deResource.
- api/types/build: mover el tipo
CachePruneOptionsaclient.BuildCachePruneOptions. moby/moby#50772 - api/types/checkpoint: mover las opciones de punto de control al módulo client. moby/moby#50905
- api/types/container:
OnBuildse omitirá ahora si su valor está vacío o es cero. moby/moby#51154 - api/types/container: hacer obsoleta la dirección
MacAddressde la configuración del contenedor para la versión v1.52 en adelante. Utiliza en su lugar los ajustes de endpoint de red. moby/moby#51189 - api/types/container: mover el tipo
ResizeOptionsaContainerResizeOptionsen el cliente. moby/moby#50773 - api/types/events: mover el tipo
ListOptionsaEventsListOptionsdel cliente. moby/moby#50774 - api/types/image: mover las opciones de imagen al cliente. moby/moby#50776
- api/types/network: mover
CreateOptions,ConnectOptionsyDisconnectOptionsal módulo client. moby/moby#50817 - api/types/network: mover los tipos
ListOptionseInspectOptionsal cliente. moby/moby#50786 - api/types/plugin: cambiar
ListResponsea una porción (slice) que no sea un puntero. moby/moby#51440 - api/types/plugin: eliminar el depreciado
Config.DockerVersion. moby/moby#51458 - api/types/registry: mover
SearchOptionsaImageSearchOptionsen el cliente. moby/moby#50787 - api/types/registry: mover el soporte de serialización del campo heredado
ServiceConfigal backend del daemon. moby/moby#50826 - api/types/registry: mover las funciones de codificación/decodificación de la configuración de autenticación al paquete de utilidades de referencia. moby/moby#50785
- api/types/storage: añadir el tipo
Storagee integrar en la inspección de contenedores. moby/moby#50857 - api/types/swarm: depreciar y abandonar el soporte para
PortConfigProtocol; utilizarnetwork.IPProtocolen su lugar. moby/moby#51094 - api/types/swarm: mover los tipos de opciones al módulo client. moby/moby#50794
- api/types/swarm: mover el tipo
SecretListOptionsal módulo client. moby/moby#50816 - api/types/system: mover
DiskUsageOptionsal cliente. moby/moby#50788 - api/types/system: mover
SecurityOptyDecodeSecurityOptionsal módulo client. moby/moby#50825 - api/types/volume: cambiar ListResponse.Volumes a una porción (slice) que no sea un puntero. moby/moby#51454
- api/types/volume: mover el tipo
ListOptionsal módulo client. moby/moby#50789 - api/types/volume: mover
UpdateOptionsal módulo client. moby/moby#51205 - api/types: daemon: mover las estructuras de uso del disco al servidor del backend. moby/moby#50764
- api: hacer opcional el campo
GraphDriverenimage.InspectResponse. Este campo se seguirá emitiendo al utilizar los controladores gráficos heredados y se omitirá al utilizar el backend de imágenes de containerd. moby/moby#50893 - api: redefinir los tipos de puerto de red de contenedores. moby/moby#50710
- client: PluginListResult: cambiar el campo Items a una porción (slice) que no sea un puntero. moby/moby#51440
- Inspeccionar redes con la API v1.52 y posteriores proporciona estadísticas sobre las asignaciones de IPAM para las subredes asociadas a la red. moby/moby#50917
- Los campos de dirección MAC se representan como porciones de bytes compatibles con el tipo de la biblioteca estándar
net.HardwareAddren lugar de cadenas. moby/moby#51355 - Se han añadido definiciones de Swagger para
NetworkSummaryyNetworkInspecta la especificación Swagger que describe la API del Engine. moby/moby#50855 - Actualizar la versión de la API a 1.52. moby/moby#50418
Go SDK
- Se han eliminado
api/pkg/progressyapi/pkg/streamformatter. moby/moby#51153 api/types/registry:EncodeAuthConfig: utilizar cadena vacía para el valor cero. moby/moby#50426api/types/versionsse ha movido al cliente y al daemon. moby/moby#51284- Los métodos
client.ConfigCreate,client.ConfigList,client.ConfigInspectWithRaw,client.ConfigUpdateyclient.ConfigRemoveaceptan ahora estructuras de opciones en lugar de argumentos posicionales, y devuelven estructuras de resultados dedicadas. moby/moby#51078 - Los métodos
client.ImageBuild,client.BuildCancel,client.ImageList,client.ImageRemove,client.ImageTagyclient.ImageSearchaceptan ahora estructuras de opciones en lugar de argumentos posicionales, y devuelven estructuras de resultados dedicadas. moby/moby#51227 client: los métodosContainerExec...han sido renombrados aExec.... moby/moby#51262client: envolver los valores de retorno deImageInspect,ImageHistory,ImageLoadeImageSaveen una estructura. moby/moby#51236ImagePulldevuelve ahora un objeto con el métodoJSONMessagesque devuelve un iterador sobre los objetos de mensaje. moby/moby#50935ImagePushdevuelve ahora un objeto con el métodoJSONMessagesque devuelve un iterador sobre los objetos de mensaje. moby/moby#51148- api/types/container: mover el tipo
StatsResponseReaderal paqueteclient. moby/moby#50521 - api/types/container: mover las opciones del contenedor al cliente. moby/moby#50897
- api/types/container: renombrar
PortaPortSummary. moby/moby#50711 - api/types/container: StatsResponse: añadir el campo
OSType. moby/moby#51305 - api/types: mover
ErrorResponseacommon/ErrorResponse. moby/moby#50632 - api: eliminar las constantes no utilizadas
DefaultVersion,MinSupportedAPIVersion. moby/moby#50587 - cli/command: añadir la opción
WithUserAgent. docker/cli#4574 - client:
ContainerCommitOptions: eliminar el campoPauseen favor deNoPause. moby/moby#51019 - client: añadir la constante
DefaultAPIVersion, que define la versión de API predeterminada (y máxima) soportada por el cliente. moby/moby#50433 - client: añadir la interfaz
ExecAPIClientpara los métodos exec proporcionados por el cliente. moby/moby#50997 - client: Client.PluginList: añadir estructura de opciones. moby/moby#51207
- client: ContainersPrune: reescribir para usar estructuras de opciones y resultados. moby/moby#51200
- client: ImagesPrune: reescribir para usar estructuras de opciones y resultados. moby/moby#51200
- client: NetworksPrune: reescribir para usar estructuras de opciones y resultados. moby/moby#51200
- client: eliminar el campo
client.ContainerStatsResult.OSType. moby/moby#51305 - client: VolumesPrune: reescribir para usar estructuras de opciones y resultados. moby/moby#51200
- daemon/config: añadir la constante
DefaultAPIVersion, que define la versión de API predeterminada (y máxima) soportada por el daemon. moby/moby#50436 - Corregir carrera de datos en
ContainerExecStart,ContainerListyEvents. moby/moby#50448 - Las direcciones IP y subredes son ahora de tipo
netip.Addrynetip.Prefix, respectivamente. moby/moby#50956 - Eliminar las estructuras
NetworkSettingsBaseyDefaultNetworkSettings. Los campos deNetworkSettingsBaseque no estaban depreciados se encuentran ahora directamente enNetworkSettings. moby/moby#50846 - El cliente utiliza ahora su propio tipo
client.Filterspara filtrar las solicitudes de la API, con una interfaz más ergonómica. Los usuarios del paquetegithub.com/docker/docker/api/types/filtersdeberán refactorizar su código al actualizar al cliente v29. moby/moby#51115 - Los tipos
"github.com/moby/moby/api/types/network".Summaryy"github.com/moby/moby/api/types/network".Inspectya no son alias, y la mayoría de sus campos se han movido a una estructura incrustada. Los clientes de la API del Engine pueden requerir algunos cambios a nivel de código fuente al migrar al nuevo módulo github.com/moby/moby/api. moby/moby#50878 - Actualizar la versión mínima de Go a 1.24. docker/cli#6624
Depreciaciones
client/pkg/jsonmessage: eliminar los depreciadosProgressMessage,ErrorMessage,DisplayJSONMessagesToStreamy la interfazStream. moby/moby#49264GET /eventsya no incluye los campos depreciadosstatus,idyfrom. Estos campos se eliminaron en la API v1.22, pero aún se incluían en la respuesta. Ahora se omiten al utilizar la API v1.52 o posterior. moby/moby#50832- api/types/network: CreateRequest: eliminar el campo depreciado
CheckDuplicate. moby/moby#50998 - api/types/plugin: depreciar el campo
Config.DockerVersion. moby/moby#51109 - api/types/registry: eliminar el campo depreciado
AuthConfig.Email. moby/moby#51059 - api/types/strslice: depreciar
StrSliceen favor del uso de un[]stringnormal. moby/moby#50292 - api/types/system: eliminar el depreciado
DiskUsage.BuilderSize. moby/moby#51180 - api/types: mover los tipos de plugin a api/types/plugin. moby/moby#48114
- API: Depreciación: el Engine rellenaba automáticamente las listas vacías de
PortBindingscon un PortBinding con HostIP y HostPort vacíos al iniciar un contenedor. Este comportamiento está depreciado para la API 1.52, y se abandonará en la API 1.53. moby/moby#50874 - build: eliminar soporte DCT para el constructor clásico. docker/cli#6195
- cli/command: eliminar el depreciado
ResolveDefaultContext. docker/cli#6555 - client: ImageBuildResponse: eliminar el campo
OSType. moby/moby#50995 - client: eliminar el método
ImageCreate; utilizarImagePulloImageImporten su lugar. moby/moby#51366 - client: eliminar el depreciado
ImageListOptions.ContainerCount. moby/moby#51006 - client: eliminar soporte para negociar versiones de la API < v1.44 (Docker 25.0). moby/moby#51119
- client: eliminar el método no utilizado
Client.HTTPClient(). moby/moby#51011 - daemon/graphdriver: eliminar el depreciado
GetDriver(). moby/moby#50377 - daemon: aumentar la versión mínima de la API a v1.44. moby/moby#51186
- Depreciar la bandera
--pauseendocker commiten favor de--no-pause. docker/cli#6460 - Depreciar cgroup v1. moby/moby#51360, docker/cli#6598
- SDK de Go:
cli-plugins/manager: depreciar los alias de metadatos en favor de su equivalente encli-plugins/manager/metadata. docker/cli#6237 - SDK de Go:
cli-plugins/manager: eliminar la interfazCandidate, la cual era solo para uso interno. docker/cli#6237 - SDK de Go:
cli-plugins/manager: eliminar la funciónNewPluginError, la cual era solo para uso interno. docker/cli#6237 - SDK de Go:
cli-plugins/manager: eliminar la constante depreciadaResourceAttributesEnvvar. docker/cli#6237 - SDK de Go:
cli/command: eliminar las utilidadesErrPromptTerminated,DisableInputEcho,PromptForInputyPromptForConfirmation. Estas utilidades eran para uso interno y ya no se utilizan. docker/cli#6243 - SDK de Go:
cli/registry/client: eliminar la utilidad depreciadaRepoNameForReference. docker/cli#6206 - SDK de Go: api/types/build: eliminar el campo depreciado
BuildCache.Parent. moby/moby#51185 - SDK de Go: api/types/container: eliminar el alias depreciado
ContainerTopOKBody. moby/moby#50400 - SDK de Go: api/types/container: eliminar el alias depreciado
ContainerUpdateOKBody. moby/moby#50400 - SDK de Go: api/types/container: eliminar el tipo depreciado
Stats. moby/moby#50492 - SDK de Go: api/types/filters: eliminar el depreciado
ToParamWithVersion. moby/moby#50561 - SDK de Go: api/types/image:
InspectResponse: eliminar los campos depreciadosVirtualSize,Container,ContainerConfig,ParentyDockerVersion. moby/moby#51103 - SDK de Go: api/types/image: eliminar el campo depreciado
Summary.VirtualSize. moby/moby#51190 - SDK de Go: api/types/registry: eliminar los campos depreciados
ServiceConfig.AllowNondistributableArtifactsCIDRsyServiceConfig.AllowNondistributableArtifactsHostnames. moby/moby#50375 - SDK de Go: api/types/swarm: eliminar el campo depreciado
ServiceSpec.Networks. moby/moby#51184 - SDK de Go: api/types/system: eliminar el campo depreciado
Commit.Expected. moby/moby#51127 - SDK de Go: api/types: eliminar alias depreciados. moby/moby#50452
- SDK de Go: api: depreciar la constante
NoBaseImageSpecifier. Esta constante ya no se utiliza y se eliminará en la próxima versión. moby/moby#50437 - SDK de Go: api: eliminar
NoBaseImageSpecifier. moby/moby#50574 - SDK de Go: cli/command/builder: eliminar
CachePrune(), que ya no se utilizaba. docker/cli#6236 - SDK de Go: cli/command/builder: eliminar
NewBuilderCommandyNewBakeStubCommand. docker/cli#6335 - SDK de Go: cli/command/checkpoint: eliminar
NewCheckpointCommand. docker/cli#6335 - SDK de Go: cli/command/checkpoint: eliminar los depreciados
NewFormat,FormatWrite. docker/cli#6339 - SDK de Go: cli/command/completion: eliminar el depreciado
NoComplete. docker/cli#6408 - SDK de Go: cli/command/config: eliminar
NewConfigCommand. docker/cli#6335 - SDK de Go: cli/command/config: eliminar los depreciados
NewFormat,FormatWrite,InspectFormatWrite. docker/cli#6339 - SDK de Go: cli/command/config: eliminar los depreciados
RunConfigCreate,CreateOptions,RunConfigInspect,InspectOptions,RunConfigList,ListOptions,RunConfigRemoveyRemoveOptions. docker/cli#6370 - SDK de Go: cli/command/container: depreciar
NewDiffFormat,DiffFormatWrite. Estas funciones se utilizaron solo internamente y se eliminarán en la próxima versión. docker/cli#6187 - SDK de Go: cli/command/container: eliminar
NewBuildCommand,NewPullCommand,NewPushCommand,NewImagesCommand,NewImageCommand,NewHistoryCommand,NewImportCommand,NewLoadCommand,NewRemoveCommand,NewSaveCommand,NewTagCommand,NewPruneCommand. docker/cli#6335 - SDK de Go: cli/command/container: eliminar
NewRunCommand,NewExecCommand,NewPsCommand,NewContainerCommand,NewAttachCommand,NewCommitCommand,NewCopyCommand,NewCreateCommand,NewDiffCommand,NewExportCommand,NewKillCommand,NewLogsCommand,NewPauseCommand,NewPortCommand,NewRenameCommand,NewRestartCommand,NewRmCommand,NewStartCommand,NewStatsCommand,NewStopCommand,NewTopCommand,NewUnpauseCommand,NewUpdateCommand,NewWaitCommand,NewPruneCommand. docker/cli#6335 - SDK de Go: cli/command/container: eliminar
RunPrune(), que ya no se utilizaba. docker/cli#6236 - SDK de Go: cli/command/container: eliminar los depreciados
NewDiffFormat,DiffFormatWrite. docker/cli#6339 - SDK de Go: cli/command/context: eliminar
NewContextCommand. docker/cli#6335 - SDK de Go: cli/command/context: eliminar los depreciados
RunCreateyCreateOptions. docker/cli#6407 - SDK de Go: cli/command/context: eliminar los depreciados
RunExportyExportOptions. docker/cli#6407 - SDK de Go: cli/command/context: eliminar el depreciado
RunImport. docker/cli#6407 - SDK de Go: cli/command/context: eliminar los depreciados
RunRemoveyRemoveOptions. docker/cli#6407 - SDK de Go: cli/command/context: eliminar los depreciados
RunUpdateyUpdateOptions. docker/cli#6407 - SDK de Go: cli/command/context: eliminar el depreciado
RunUse. docker/cli#6407 - SDK de Go: cli/command/formatter/swarm: eliminar la función depreciada
GetStacks. docker/cli#6406 - SDK de Go: cli/command/image/build: depreciar
DefaultDockerfileName,DetectArchiveReader,WriteTempDockerfile,ResolveAndValidateContextPath. Estas utilidades solo se utilizaron internamente y se eliminarán en la próxima versión. docker/cli#6561 - SDK de Go: cli/command/image: eliminar
RunPrune(), que ya no se utilizaba. docker/cli#6236 - SDK de Go: cli/command/image: eliminar la utilidad depreciada
AuthResolver. docker/cli#6373 - SDK de Go: cli/command/image: eliminar los depreciados
NewHistoryFormat,HistoryWrite. docker/cli#6339 - SDK de Go: cli/command/manifest: eliminar
NewManifestCommand. docker/cli#6335 - SDK de Go: cli/command/network: eliminar
NewNetworkCommand. docker/cli#6335 - SDK de Go: cli/command/network: eliminar
RunPrune(), que ya no se utilizaba. docker/cli#6236 - SDK de Go: cli/command/network: eliminar los depreciados
NewFormat,FormatWrite. docker/cli#6339 - SDK de Go: cli/command/node: eliminar
NewNodeCommand. docker/cli#6335 - SDK de Go: cli/command/node: eliminar los depreciados
NewFormat,FormatWrite,InspectFormatWrite. docker/cli#6339 - SDK de Go: cli/command/plugin: eliminar
NewPluginCommand. docker/cli#6335 - SDK de Go: cli/command/plugin: eliminar los depreciados
NewFormat,FormatWrite. docker/cli#6339 - SDK de Go: cli/command/registry: eliminar
NewLoginCommand,NewLogoutCommand,NewSearchCommand. docker/cli#6335 - SDK de Go: cli/command/registry: eliminar los depreciados
NewSearchFormat,SearchWrite. docker/cli#6339 - SDK de Go: cli/command/registry: eliminar la constante depreciada
OauthLoginEscapeHatchEnvVar. docker/cli#6463 - SDK de Go: cli/command/secret: eliminar
NewSecretCommand. docker/cli#6335 - SDK de Go: cli/command/secret: eliminar los depreciados
NewFormat,FormatWrite,InspectFormatWrite. docker/cli#6339 - SDK de Go: cli/command/service: eliminar
NewServiceCommand. docker/cli#6335 - SDK de Go: cli/command/service: eliminar los depreciados
NewFormat,InspectFormatWrite. docker/cli#6339 - SDK de Go: cli/command/stack/swarm: eliminar los depreciados
RunPSyoptions.PS. docker/cli#6398 - SDK de Go: cli/command/stack: eliminar
NewStackCommand. docker/cli#6335 - SDK de Go: cli/command/stack: eliminar los depreciados
RunListyoptions.List. docker/cli#6398 - SDK de Go: cli/command/stack: eliminar los depreciados
RunServicesyswarm.GetServices. docker/cli#6398 - SDK de Go: cli/command/swarm: eliminar
NewSwarmCommand. docker/cli#6335 - SDK de Go: cli/command/system: eliminar
NewVersionCommand,NewInfoCommand,NewSystemCommand,NewEventsCommand,NewInspectCommand. docker/cli#6335 - SDK de Go: cli/command/task: eliminar los depreciados
NewTaskFormat,FormatWrite. docker/cli#6339 - SDK de Go: cli/command/trust: eliminar
NewTrustCommand. docker/cli#6335 - SDK de Go: cli/command/trust: eliminar el depreciado
NewPruneCommand. docker/cli#6344 - SDK de Go: cli/command/trust: eliminar los depreciados
SignedTagInfo,SignerInfo,NewTrustTagFormat,NewSignerInfoFormat,TagWrite,SignerInfoWrite. docker/cli#6339 - SDK de Go: cli/command/volume: eliminar
NewVolumeCommand,NewPruneCommand. docker/cli#6335 - SDK de Go: cli/command/volume: eliminar
RunPrune(), que ya no se utilizaba. docker/cli#6236 - SDK de Go: cli/command: eliminar las utilidades
AddTrustSigningFlags,AddTrustVerificationFlagsyAddPlatformFlag, las cuales solo se utilizaban internamente. docker/cli#6244 - SDK de Go: cli/command: eliminar la utilidad depreciada
DockerCli.Apply. docker/cli#6503 - SDK de Go: cli/command: eliminar la utilidad depreciada
DockerCli.ContentTrustEnabled. docker/cli#6502 - SDK de Go: cli/command: eliminar la utilidad depreciada
DockerCli.DefaultVersion. docker/cli#6502 - SDK de Go: cli/command: eliminar la utilidad depreciada
RegistryAuthenticationPrivilegedFunc. docker/cli#6349 - SDK de Go: cli/command: eliminar las opciones depreciadas
WithContentTrustFromEnv,WithContentTrust. docker/cli#6502 - SDK de Go: cli/config/configfile: eliminar el campo depreciado
ConfigFile.Experimental. docker/cli#6464 - SDK de Go: cli/config/types: eliminar el campo depreciado
AuthConfig.Email. docker/cli#6515 - SDK de Go: cli/manifest/store: eliminar el depreciado
IsNotFound. docker/cli#6523 - SDK de Go: cli: eliminar las utilidades depreciadas
VisitAll,DisableFlagsInUseLine. docker/cli#6296 - SDK de Go: client: eliminar
APIClient.ImageInspectWithRawde la interfazAPIClient. moby/moby#50485 - SDK de Go: client: eliminar
ImageAPIClient.ImageInspectWithRawde la interfazImageAPIClient. moby/moby#50485 - SDK de Go: client: eliminar
ImageAPIClientDeprecated.ImageInspectWithRawde la interfazImageAPIClientDeprecated. moby/moby#50485 - SDK de Go: client: eliminar las funciones depreciadas
ErrorConnectionFailedyIsErrNotFound. moby/moby#50485 - SDK de Go: client: eliminar las funciones depreciadas
NewClientyNewEnvClient. moby/moby#50485 - SDK de Go: client: eliminar la interfaz
CommonAPIClient. moby/moby#50485 - SDK de Go: client: eliminar la interfaz
ImageAPIClientDeprecated. moby/moby#50485 - SDK de Go: client: eliminar el método depreciado
Client.ImageInspectWithRaw. moby/moby#50485 - SDK de Go: container: eliminar el depreciado
IsValidHealthString. moby/moby#50378 - SDK de Go: container: eliminar el depreciado
IsValidStateString. moby/moby#50378 - SDK de Go: container: eliminar los depreciados
StateStatus,WaitConditiony las constantes relacionadasWaitConditionNotRunning,WaitConditionNextExityWaitConditionRemoved. moby/moby#50378 - SDK de Go: depreciar
pkg/stdcopy, el cual se movió aapi/pkg/stdcopy. moby/moby#50462 - SDK de Go: depreciar el campo
NetworkSettingsBase.Bridge, la estructuraNetworkSettingsBase, todos los campos deDefaultNetworkSettingsy la estructuraDefaultNetworkSettings. moby/moby#50848 - SDK de Go: depreciar
pkg/stringiden favor degithub.com/moby/moby/client/pkg/stringid. moby/moby#50504 - SDK de Go: depreciar el paquete
profilesque se migró agithub.com/moby/profiles. moby/moby#50481 - SDK de Go: oci: depreciar
SetCapabilities, y algunas limpiezas/correcciones menores. moby/moby#50461 - SDK de Go: opts: eliminar el depreciado
ListOpts.GetAll. Ya no se utiliza y se reemplazó porListOpts.GetSlice. docker/cli#6293 - SDK de Go: opts: eliminar los depreciados
NewNamedListOptsRef,NewNamedMapOpts,NamedListOpts,NamedMapOptsyNamedOption. Estos tipos y funciones ya no se utilizan y se eliminarán en la próxima versión. docker/cli#6293 - SDK de Go: opts: eliminar el depreciado
ParseEnvFileen favor dekvfile.Parse. docker/cli#6382 - SDK de Go: opts: eliminar el depreciado
QuotedString. docker/cli#6293 - SDK de Go: opts: eliminar el depreciado
ValidateHost. docker/cli#6293 - SDK de Go:
pkg/systemse ha eliminado y es ahora un paquete interno. moby/moby#50559 - SDK de Go: pkg/system: depreciar
EscapeArgs()eIsAbs. Estas funciones se utilizaron solo internamente y se eliminarán en la próxima versión. moby/moby#50399 - SDK de Go: registry: eliminar los campos depreciados
APIEndpoint.TrimHostName,APIEndpoint.OfficialyAPIEndpoint.AllowNondistributableArtifacts. moby/moby#50376 - SDK de Go: registry: eliminar las funciones depreciadas
HostCertsDir()ySetCertsDir(). moby/moby#50373 - SDK de Go: registry: eliminar los campos depreciados
RepositoryInfo.OfficialyRepositoryInfo.Class. moby/moby#50498 - SDK de Go: registry: eliminar el depreciado
Service.ResolveRepository(). moby/moby#50374 - SDK de Go: eliminar
buildkit.ClientOpts. moby/moby#50318 - SDK de Go: eliminar
pkg/fileutils. moby/moby#50558 - SDK de Go: eliminar los depreciados
IsNotFound,CommandAnnotationPlugin,CommandAnnotationPluginVendor,CommandAnnotationPluginVersion,CommandAnnotationPluginInvalid,CommandAnnotationPluginCommandPath,NamePrefix,MetadataSubcommandName,HookSubcommandName,MetadatayReexecEnvvardecli-plugins/manageren favor de sus equivalentes encli-plugins/manager/metadata. docker/cli#6414 - SDK de Go: eliminar los paquetes depreciados
types/plugins/logdriverytypes/swarm/runtime; la especificación de plugin-runtime se expone ahora comotypes/swarm.RuntimeSpecytypes/swarm.RuntimePrivilege. moby/moby#50554 - SDK de Go: eliminar el paquete depreciado
cli/command/formatter. docker/cli#6406 - SDK de Go: eliminar el paquete depreciado
cli/registry/client. docker/cli#6462 - SDK de Go: eliminar el paquete depreciado
pkg/idtools. moby/moby#50456 - SDK de Go: templates: eliminar la función depreciada
NewParse. docker/cli#6453 - Ocultar la opción
--kernel-memoryendocker runydocker create, y producir una advertencia al usarla ya que ya no está soportada por el daemon ni por el kernel. docker/cli#6455 - Eliminar el campo
VirtualSizede la salida dedocker image lscuando se utiliza el formato JSON. docker/cli#6524 - Eliminar las opciones de formato y salida de
VirtualSize. docker/cli#6524 - Eliminar la compatibilidad con versiones de la API < v1.44 (Docker v24.0 y anteriores). docker/cli#6551
- Eliminar la opción depreciada
bind-nonrecursivepara--mount. docker/cli#6241 - Eliminar los paquetes depreciados (
pkg/archive,pkg/chrootarchive,pkg/atomicwriter,pkg/reexec,pkg/platform,pkg/parsers),pkg/system.MkdirAll. Para los reemplazos, vergithub.com/moby/go-archive,github.com/moby/sysy la biblioteca estándar. moby/moby#50208 - Eliminar el manejo especial para valores entrecomillados para las banderas de línea de comandos
--tlscacert,--tlscerty--tlskey. docker/cli#6306 - Eliminar el soporte para AutoRemove (
--rm) en API < 1.30. docker/cli#6525 - Eliminar el soporte para cargar imágenes heredadas (anteriores a Docker 1.10). moby/moby#50324