Aprender Docker, un enfoque práctico. José Juan Sánchez Hernández
Чтение книги онлайн.
Читать онлайн книгу Aprender Docker, un enfoque práctico - José Juan Sánchez Hernández страница 15
11. Indica la versión de Go que está utilizando el servidor.
12. Indica los siete primeros caracteres del hash SHA del commit que se ha utilizado para hacer la release de esta versión del servidor.
13. Indica la fecha de la release de esta versión del servidor.
14. Indica el sistema operativo y la arquitectura donde se está ejecutando el servidor.
15. Indica que el servidor tiene desactivadas las características experimentales de Docker Engine.
16. Indica la versión de containerd
y el hash SHA del commit que se está utilizando.
17. Indica la versión de runc
y el hash SHA del commit que se está utilizando.
18. Indica la versión de docker-init
y el hash SHA del commit que se está utilizando.
Si obtenemos una salida similar a la anterior, es que la instalación se ha realizado de forma correcta.
Ahora vamos a ejecutar el mismo comando, pero sin utilizar sudo
:
Deberíamos obtener una salida similar a esta:
En este caso, solo hemos obtenido información del cliente y un mensaje de error que indica que no hemos podido conectar con el servicio Docker daemon.
Cuando el cliente y el servicio Docker daemon se ejecutan en la misma máquina, se comunican con un socket de tipo UNIX que está ubicado en /var/run/docker.sock
.
Para poder hacer uso de este socket, el usuario necesita tener permisos de root
o pertenecer al grupo de usuarios del sistema docker
.
Para solucionar este problema, podemos ejecutar los comandos con sudo
o añadir a nuestro usuario al grupo de usuarios docker
, que es lo que vamos a explicar en la siguiente sección:
2.2.4. Pasos posteriores a la instalación en Linux
Una vez que hemos realizado la instalación de Docker Engine en Linux, la documentación oficial nos recomienda realizar dos pasos opcionales: la configuración del usuario con el que vamos a utilizar el cliente Docker CLI y habilitar el servicio de Docker, para que se inicie automáticamente al poner en funcionamiento el sistema.
Configuración del usuario
Si hemos instalado el cliente y el servicio Docker daemon en la misma máquina, van a utilizar por defecto un socket UNIX para comunicarse. Los únicos usuarios que pueden utilizar dicho socket son el usuario root
y los usuarios que pertenecen al grupo docker
.
Para evitar tener que escribir sudo
cada vez que vayamos a ejecutar un comando del cliente, tenemos que añadir al usuario con el que vamos a trabajar al grupo docker
.
Para añadir al usuario actual al grupo docker
, vamos a utilizar el comando usermod
:
En este ejemplo, estamos utilizando la variable de entorno $USER
, que contiene el nombre del usuario actual que está ejecutando el comando. En lugar de utilizar la variable $USER
, podemos indicar el nombre del usuario de forma explícita.
Para activar los cambios en los grupos sin tener que cerrar la sesión, podemos ejecutar el siguiente comando:
Configuración de Docker Engine para que se inicie automáticamente
El siguiente paso consiste en configurar los servicios de docker
y containerd
, para que se inicien automáticamente cuando se inicie el sistema.
En las distribuciones Debian y Ubuntu, estos servicios se configuran por defecto durante la instalación. Pero, para el resto de las distribuciones Linux, hay que configurarlo de forma manual. En estos casos, utilizaremos el comando systemctl:
2.3. Instalación de Docker Desktop en Windows 10
Docker Desktop para Windows es una aplicación que ofrece el entorno de desarrollo ideal para trabajar con contenedores Docker en Windows. Esta aplicación tiene soporte para ejecutar contenedores Linux y Windows. Más adelante, explicaremos qué diferencias existen entre ambos.
Además de la versión Community Edition (CE) de Docker Engine, también incluye otros componentes, como Docker CLI, Docker Compose, Docker Content Trust, Kubernetes y Credential Helper.
Docker Desktop para Windows 10 tiene soporte para dos tipos de backends:
La opción recomendada es WSL 2 aunque, si queremos utilizar contenedores Windows, vamos a necesitar activar Hyper-V.
Hyper-V
Hyper-V es el hipervisor de Windows y Windows Server, que proporciona virtualización de hardware para ejecutar máquinas virtuales.
En Windows 10, solo está disponible para las versiones de 64 bits de las ediciones Pro, Enterprise y Education. No está disponible para la edición Home.
En mayo de 2020, se publicó la versión 2004 (Build 19041) de Windows 10 y fue, a partir de esta versión, cuando se añadió el soporte para múltiples hipervisores. Antes de esta versión, no era posible ejecutar las aplicaciones de virtualización de terceros, como VirtualBox y VMware, si el hipervisor Hyper-V estaba habilitado.
WSL 2
El subsistema de Windows para Linux (WSL) permite ejecutar un entorno GNU/Linux sobre un sistema operativo Windows sin tener que utilizar una máquina virtual tradicional, ni una configuración de arranque dual. Con WSL, podemos ejecutar comandos y aplicaciones Linux