Despliega tu enjambre de contenedores con Docker en Ubuntu 22.04
Docker es mi motor de implementación de contenedores preferido. Con él, puedo desplegar rápidamente contenedores en una red que son fácilmente accesibles. Pero, ¿qué sucede cuando quiero escalar esas aplicaciones? Hacerlo en un solo servidor Docker sería un desafío. Para ello, despliegas múltiples instancias de Docker y las agrupas en un conjunto, eso, mis amigos, se llama Docker Swarm.
![Despliega tu enjambre de contenedores con Docker en Ubuntu 22.04 - Video](https://i.ytimg.com/vi/W-DD3QPlRHo/hqdefault.jpg)
![Despliega tu enjambre de contenedores con Docker en Ubuntu 22.04 - Desarrollo | Imagen 1 Newsmatic Despliega tu enjambre de contenedores con Docker en Ubuntu 22.04 - Desarrollo | Imagen 1 Newsmatic](/wp-content/uploads/implementacion-docker-swarm-ubuntu-imagen-1.webp)
Permíteme mostrarte cómo desplegar un Docker Swarm en mi distribución de servidor estándar de facto, Ubuntu. Hay varias partes móviles involucradas, así que manos a la obra.
Lo que necesitarás para desplegar un Docker Swarm
Voy a demostrarlo con un clúster de tres nodos (uno controlador y dos nodos). Para eso, necesitarás tres instancias de Ubuntu Server 22.04. También necesitarás un usuario con privilegios sudo.
Cómo instalar la última versión de Docker
Querrás hacer esto en cada nodo de tu Swarm.
Primero, agrega la llave GPG de Docker con el comando:
![](https://newsmatic.com.ar/wp-content/uploads/despliegue-node-js-ubuntu-imagen-1-150x150.webp)
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
Luego, agrega el repositorio oficial de Docker:
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
A continuación, instalaremos algunas dependencias con el comando:
sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release -y
Finalmente, podemos instalar la última versión del engine de Docker:
![](https://newsmatic.com.ar/wp-content/uploads/habilitar-arranque-pxe-virtualbox-imagen-1-150x150.webp)
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io -y
Para finalizar, agrega tu usuario al grupo "docker" con el comando:
sudo usermod -aG docker $USER
Cierra sesión y vuelve a iniciarla para que los cambios surtan efecto.
Cómo cambiar el nombre de host en tus servidores
Cambiemos los nombres de host de tus servidores Docker Swarm. Esto se hará en todos los nodos. Los configuraremos como docker1, docker2 y docker3, pero puedes nombrarlos como prefieras.
Para establecer el nombre de host, el comando es:
![](https://newsmatic.com.ar/wp-content/uploads/implementar-microk8s-ubuntu-imagen-1-150x150.webp)
sudo hostnamectl set-hostname HOSTNAME
Donde HOSTNAME es el nombre del host para la máquina.
Cómo mapear el archivo de hosts
Esto también se hace en cada nodo. Abre el archivo de hosts con el comando:
sudo nano /etc/hosts
Al final del archivo, mapea cada host de la siguiente manera (cambiando las entradas para que coincidan con tus nombres de host y direcciones IP):
192.168.1.60 docker1
192.168.1.61 docker2
192.168.1.62 docker3
![](https://newsmatic.com.ar/wp-content/uploads/curso-desarrollo-full-stack-imagen-1-150x150.webp)
Guarda y cierra el archivo.
Cómo inicializar el Swarm
Ve al nodo controlador (docker1) e inicia el Swarm con el comando, asegurándote de editar la dirección IP según tus necesidades:
docker swarm init --advertise-addr 192.168.1.60
Luego deberías ver un comando de unión que se ve algo así:
docker swarm join --token SWMTKN-1-05rgkgq9hgvas7wfglzrumxymzxw3downs1afcbdr9kc7hq4cm-8ku8kxjsq57l1xnkl5lzjppro 192.168.1.60:2377
Ejecuta ese comando en cada uno de tus nodos. Una vez que se hayan unido, puedes verificar el Swarm en el nodo controlador con el comando:
![](https://newsmatic.com.ar/wp-content/uploads/descubrir-desarrollo-futuro-aplicaciones-imagen-1-150x150.webp)
docker node ls
Deberías ver algo como esto en la salida:
tpsl7enzswhkeef3dh8uswkxp * docker1 Ready Active Leader 20.10.17
xnye548afhe1hc832kulh5sui docker2 Ready Active 20.10.17
cammaze2fcfcomjpdo0fwz105 docker3 Ready Active 20.10.17
Felicidades, tu Docker Swarm está listo para tus implementaciones. Puedes seguir agregando nuevos nodos según sea necesario para obtener una capacidad de escalado y recuperación ante fallos aún mayor.
![](https://newsmatic.com.ar/wp-content/uploads/guia-devops-imagen-1-150x150.webp)
En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Desarrollo, allí encontraras muchos artículos similares a Despliega tu enjambre de contenedores con Docker en Ubuntu 22.04 , tenemos lo ultimo en tecnología 2023.
Artículos Relacionados