Docker

Notas sobre la experiencia de uso de los famosos contenedores.


Advertencia y consideraciones

Estas notas han venido creciendo conforme se he venidos haciendo uso de Docker y los servicios detrás de éste (muy similar al caso de la AWS CLI). Si bien se cuida y se tiene cuidado en la integridad de las instrucciones descritas y ejemplificadas aquí, lo que se muestra puede corresponder a diferentes versiones de los programas y servicios que Docker provee. Favor de tener esto en consideración y leer la declaración de responsabilidad de este sitio.

Instalación

macOS

La instalación en macOS es bastante simple. Como es usual, con un drag & drop y termina el asunto. Al menos para el caso de macOS 11, Docker funciona también si se instala en el Applications del usuario, que puede ser una alternativa para concentrar los archivos de la aplicación en una sola cuenta.

Instalación en macOS 10.14, se mantienen hasta macOS 12.

La primera vez que la aplicación arranca requiere que se le reconozca como una aplicación legítima.

Y es posible que requiera permisos adicionales para terminar de instalar algunos componentes.

Ya sea que se dé clic en Exit u OK, algunas ventanas con diálogos podrán haber sido abiertas (usualmente adelante de otras aplicaciones pero pudieran quedar atrás de alguna otra o en otra pantalla si se tiene más de una), como la que se ilustra abajo.

Finalmente, Docker buscará instalar algunos helpers.

Windows

Para el caso de Windows, uno debe recurrir al instalador.

Ubuntu (WSL)

En el caso de la implementación de Ubuntu, incluyendo al Windows Subsystem for Linux (WSL)… pendiente de validar.

Uso

La página de descarga de Dockers incluye un breve tutorial, que vale la pena seguir si uno apenas se está familiarizando con esta tecnología. El tutorial sirve además para validar el funcionamiento del software descargado y su instalación.

Troubleshooting

Error con los ejemplos de los tutoriales

En mi caso, sucedió que al tratar de correr el ejemplo del tutorial obtuve un mensaje de error

$ docker build -t usuario/cheers2019 .
-bash: docker: command not found
$ docker build .
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.39/build?buildargs=%7B%7D&cachefrom=%5B%5D&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=Dockerfile&labels=%7B%7D&memory=0&memswap=0&networkmode=default&rm=1&session=tzfg4755vipyl54cdmc7jrzia&shmsize=0&target=&ulimits=null&version=1: dial unix /var/run/docker.sock: connect: permission denied
.

Versión incorrecta del instalador

Para el caso de macOS, en este momento que se venden com dos tipos de procesadores, Intel y Apple Silicon, debe cuidarse de instalarse para el procesador adecuado. En caso contrario se recibirá un mensaje como éste.

Reset to factory defaults

Una instalación previa fallida o algo que no haya quedado bien en la actual, pueden dar lugar a un mensaje como el que se ilustra abajo.

Una posible alternativa de solución es dar click en el botón Reset Docker to factory defaults

Otra es desinstalar (ver la sección Desinstalación) Docker cuidando eliminar todos los archivos del producto y que se hayan creado para el usuario y repetir la instalación.

Desinstalación

Para la desinstalación, hay al menos tres formas de lograrlo.

1. Desde Docker mismo

Ya sea desde la opción Troubleshoot del menú generado por el ícono de Docker en el menú principal

o desde el ícono de «bug» en la barra superior del Docker Desktop

acceder a las sección de troubleshooting de las preferencias de Docker, y desde ahí seleccionar la opción Uninstall.

2. A través de un script de desinstalación

Un script de desinstalación está disponible en GitHub.

3. Manualmente

Realizando manualmente las acciones que realiza el script indicado en la sección previa.

https://therealmarv.com/how-to-fully-uninstall-the-offical-docker-os-x-installation/

https://www.drbuho.com/how-to/uninstall-docker-mac

Referencias

  1. URL: https://nickjanetakis.com/blog/setting-up-docker-for-windows-and-wsl-to-work-flawlessly
  2. URL: https://www.codemag.com/Article/2103061/Introduction-to-Containerization-Using-Docker
  3. https://www.youtube.com/watch?v=3c-iBn73dDE

Twitter Wordpress eMail
© Todos los derechos reservados.
Dr. Eduardo René Rodríguez Avila
Creación: 2019.07.11
Última actualización: 2022.11.09
El contenido de este sitio puede ser copiado y reproducido libremente mientras no sea alterado y se cite su origen. Marcas y productos registrados son citados por referencia y sin fines de lucro o dolo. Todas las opiniones son a título personal del o los autores de éstas y, salvo sea expresado de otro modo, deben considerarse como registro y expresión de la experiencia de uso de aquello que es tratado. Para conocer más sobre la posición de privacidad y responsabilidad de lo que se presenta en este sitio web y como ha sido obtenido, consulte la declaración al respecto.