No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Curso de Swarm

Curso de Swarm

Guido Vilari帽o

Guido Vilari帽o

Fundamentos de Docker Swarm: servicios

8/24
Recursos

Aportes 17

Preguntas 2

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

Hola Guido,

Tengo corriendo docker swarm para unos microservices en mi trabajo, tenemos un CI para hacer constantemente deploys al docker swarm. La cuesti贸n es que el server cada d铆a va consumiendo mas disco duro y es porque las im谩genes de docker se van acumulando. La soluci贸n que hice fue crear un cron job que lo que hace es que todos los d铆as hace un docker system prune -f para eliminar todas las im谩genes que ya no est谩n en uso.

Cual seria una buena practica para esto ?

En swarm no se corren contenedores manualmente, se declaran los servicios que se desean correr.

// Crear Servicio con el nombre pinger, realizando un ping a google.com
docker service create --name pinger alpine ping www.google.com
// lista los servicios
docker service ls

  • Un servicio puede agrupar a uno o varios contenedores.
  • docker service create --name nombre imagedocker command, para crear un nuevo servicio, con un nombre, imagen y comando espec铆fico en docker swarm.
  • docker service ls, para listar una serie de servicios.
  • Para poder crear un servicio docker swarm usa los mismos conceptos que se usa docker.
  • docker swarm init
    l- inux alpine: muy peque帽o orientado a seguridad. Se usa mucho en docker como base de im谩genes.
  • docker service create --name pinger alpine ping www.google.com

Alpine es una imagen de linux que es muy liviana orientado a seguridad. Se utiliza mucho como base para diferentes contenedores.

Entendido

docker service create --name pinger alpine ping www.google.com
docker service ls

Las tareas de un servicio puede escalar automaticamente ?, de manera que se pueden ajustar a mi demanda dependiendo de los nodos que a帽ado al cluster de docker swarm

Para usar el comando de docker service necesitas activar el modo Swarm, una vez hecho puedes usar el comando:

List services:

docker service ls

Create a service:

docker service create --name <name> <image> <command>
# for example  
docker service create --name pinger alpine ping www.google.com

Docker swarm descargas las im谩genes que requiera para completar la instrucci贸n.

Cuando se utiliza Docker-Compose, utilizamos el termino SERVICIO que 鈥渆sta por encima de los contenedores鈥 ya que AGRUPA a los contenedores, en Docker Swarm utilizamos el mismo concepto.

鈥 Creando el primer servicio con la imagen de ALPINE

docker service create --name pinger alpine  ping www.google.com

鈥 Listar que servicios estan corriendo

docker service ls

鈥 Listar contenedores, observamos que el nombre del contenedor asignado se asemeja al nombre del servicio

docker ps
<h5>Comandos</h5>
  • Inicializamos Docker Swarm
docker swarm init
  • Creamos un servicio llamado pinger que use una imagen de alpine para hacer un ping a una direcci贸n, en este caso, Google
docker service create --name pringer alpine ping www.google.com
  • Listamos los servicios activos
docker service ls

Las r茅plicas es como en docker compose los contenedores

  • Listamos los contenedores que est谩n corriendo, se sabe exactamente dado que estamos en un s贸lo contenedor
docker ps

Lo que hizo cuadno sal铆o que estaba preparando fue descargar la imagen de alpine dado que no la ten铆amos en la m谩quina, el funcionamiento parte de la base de lo aprendido en el curso de Docker.

Docker swarn init
docker service create --name pinger alpine ping google
docker service ls

Antes de esta clase vuelvan a iniciar el docker swarm, sino les dar谩 error.

docker swarm init

Excelente