Podemos poner a correr uno, dos o más dockers sin problema, podemos armarnos un docker-compose.yml
que se encargue de levantar redes, definir volúmenes, correr dockers en órden de dependencia, en fin, podemos tener dockers corriendo… pero después, ¿cómo sabemos por qué nuestro sistema está lento? ¿por qué el host se queda sin memoria?
Claro que tenemos las herramientas de siempre: top
, vmstat
, htop
… por nombrar algunas. Pero desde el host vemos el 100% de los procesos, pero no los contenedores responsables.
Asi que esta es una lista de las herramientas que utilizo para monitoreo de docker:
CTOP
Un top
, pero por contenedor, como si cada contenedor fuera un proceso
https://github.com/bcicen/ctop
y en mis servidores lo incluyo (mediante una task de ansible) en este alias:
alias ctop='docker run --rm -ti \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
quay.io/vektorlab/ctop:latest'
LazyDocker
Un panel en la consola para todo tu docker (imágenes, docker corriendo, volúmenes) que te permite ver logs, stats, etc. y algunas acciones basicas como stop/start, delete, etc…. y todo todo sensible al mouse (click!) y por SSH
https://github.com/jesseduffield/lazydocker
y en mis servidores ansible lo deja configurado asi:
alias lazydocker='docker run --rm -it \
-v /var/run/docker.sock:/var/run/docker.sock \
lazyteam/lazydocker'
Si conoces alguna otra herramienta, compártela en los comentarios.