Después de tener ya nuestro nodos preparados lanzaremos 5 contenedores iguales con un archivo docker-compose.yml.

El archivo (usando la imagen que ya habíamos creado en nuestro host llamada «ubuntutest_web») es el siguiente:

version: «3»
services:
web:
# 5 contenedores web (Apache) respondiendo a la misma IP o diferentes
image: ubuntutest_web
deploy:
replicas: 5
resources:
limits:
cpus: «0.1»
memory: 100M
restart_policy:
condition: on-failure
ports:
– «8080:80»
networks:
– webnet
networks:
webnet:

Las imágenes del lanzamiento del docker-compose son las siguientes:

Como estamos en un modelo “roundrobin» (por defecto) se asignan las tareas por orden a los containers activos. Podríamos modificar el archivo “docker-compose.yml” y aumentar (por ejemplo) el número de instancias (contenedores) a «7» y relanzarlo de nuevo. En las siguientes imágenes vemos esta acción.

En la siguiente entrada crearemos un Stack con nuestra colmena (Swarm) donde lanzaremos 3 servicios diferentes y 5 contenedores en uno de ellos. Finalmente decir que para detener y eliminar un Swarm lo podemos hacer con docker stack rm NOMBRE_STACK, como vemos en la siguiente imagen.

Un apunte final. No podemos desplegar un Stack de varios contenedores (replicas) con una imagen que no este construida (build) previamente, nos dará error.