En mi experiencia y opinión, no habrá mucha diferencia en usar Docker desde la instalación de snap
vs. apt
. Sin embargo, es importante que elijas uno o el otro, ya que no pueden realmente coexistir. En cuanto a abordar algunas de tus preguntas específicas:
¿Eso significaría que los contenedores de Docker están dentro del contenedor de snap, si lo instalé a través de snap?
De cierta manera, esto es cierto. Pero más bien, los contenedores de Docker se ejecutan en un entorno aislado. Sin embargo, la abstracción de snap
es bastante transparente, así que no creo que haya ninguna diferencia práctica en el rendimiento.
¿Existen diferencias notables entre snap y apt para Docker específicamente? ¿Alguna diferencia funcional? ¿Alguna diferencia de uso con la que pueda encontrarme más adelante?
La mayor diferencia puede estar en la contención de los datos. Según la página de Docker de Snapcraft:
Esta compilación solo puede acceder a archivos en el directorio de inicio. Por lo tanto, los Dockerfiles y todos los demás archivos utilizados en comandos como docker build, docker save y docker load deben estar en $HOME.
Así que por defecto, la versión de snap
solo accederá a archivos en $HOME
, mientras que la versión de apt
puede acceder a archivos en cualquier lugar.
Como también mencionaste, los snaps
pueden afectar los tiempos de arranque y carga, pero principalmente en sistemas más antiguos. En sistemas más nuevos con discos SSD, esto no debería ser un problema.
Además, al ejecutar la versión de snap
, el servicio de Docker que se ejecuta (docker.service
) no es visible directamente en el sistema. Esto significa que cualquier ajuste fino del servicio systemd no es posible en la misma medida que con la versión de apt
.
Finalmente, las aplicaciones de snap
se actualizan automáticamente, con una opción de rebote a las últimas 2 versiones de forma predeterminada. Puede que prefieras esto o no.
A partir del 31/03/2022 y para Ubuntu 20.04 Focal, la versión de apt
de Docker es 20.10.7, mientras que la versión de snap
es 20.10.12.
Para mayor referencia, la última versión de los repositorios oficiales de Docker es la 20.10.14. Por lo tanto, si deseas la última versión absoluta, se recomienda instalarla como un paquete apt
desde los repos oficiales de Docker.
Conclusión
En general, la funcionalidad básica de Docker será la misma (dejando de lado la contención de datos, el control de servicio y posibles diferencias menores de versión), sin importar qué opción de instalación elijas. Tanto la versión de snap
como la de apt
deberían ser generalmente adecuadas para uso en producción, pero la versión de apt
permitirá más posibilidades de control y personalización a nivel bajo.