Dozzle: visualizador de logs en tiempo real para tus Dockers
¡#DomingoDeSelfHosted! Este tutorial va enfocado sobretodo para aquellos usuarios que tienen corriendo decenas de Dockers en su sistema NAS. En estas situaciones se convierte en una herramienta realmente útil.
Cuando tenemos tantos servicios activos, y queremos inspeccionar el Log de alguno de ellos, y después el de otro, se vuelve una tarea perezosa. Con la herramienta que os traigo hoy, esto se va a simplificar muchísimo, ya que podremos ver los Logs en tiempo real de todos los Dockers activos en tu sistema a golpe de clic.
El otro día os mostraba Dockge, la nueva herramienta que supone una alternativa sencilla y moderna al clásico Portainer. Hoy, gracias a esta herramienta, vamos a poder optimizar más nuestro tiempo ante cualquier problema.
Creación de las carpetas
El primer paso como en toda creación de un nuevo servicio por Docker, es la creación de las carpetas dentro del volumen asignado (en mi caso 'volume1 - docker'). En este caso solamente tendremos que crear una carpeta con el nombre de dozzle.
Docker-Compose
Para instalar Dozzle en nuestro NAS, tendremos que crear un nuevo stack en Portainer y pegar el siguiente Docker-Compose.
version: "3"
services:
dozzle:
container_name: dozzle
image: amir20/dozzle:latest
environment:
- DOZZLE_ENABLE_ACTIONS=true
- DOZZLE_AUTH_PROVIDER=simple
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /volume1/docker/dozzle:/data
ports:
- 8888:8080
unRAID: Pasos a seguir
La instalación en unRAID es lo más sencillo del mundo, ya que lo único que tendremos que hacer será bajarnos la imagen de dozzle.
Antes de instalar la plantilla tendremos que añadir tres variables tal y como muestro en la imagen superior. Una de ellas, nos va a permitir parar o reiniciar los contenedores. Algo útil si estamos haciendo un prueba-error mientras vemos los logs.
Una vez hecho esto, ya podremos aplicar para proceder con la instalación de Dozzle.
Creación del usuario de inicio
Una vez ejecutado el stack nos dará error, ya que tenemos que especificar un usuario y contraseña para acceder al servicio.
Para ello, entramos vía SSH a nuestro NAS y nos dirigimos a la ruta que hemos mapeado el volumen de "/data", en Synology sería /volume1/docker/dozzle/
y en el caso de unRAID sería en /mnt/user/appdata/dozzle
Escribimos en la terminal: nano users.yml
y pegamos siguiente:
users:
# "admin" Este será el usuario
admin:
name: "Admin"
password: "xxxxxxxxxxxxxxxxxxxxxxxx"
email: me@email.net
Para generar la contraseña, utilizaremos el comando: echo -n 'CONTRASEÑA' | sha256sum
. Una vez generada, la pegamos en el fichero users.yml y ya podremos guardar el archivo y reiniciar el Docker.
Dozzle
Una vez hemos ejecutado el Docker-Compose correctamente, podemos acceder a Dozzle a través de: http://IPlocalNAS:8888
o creando un Proxy Inverso como por ejemplo: https://logdocker.midominio.com
.
El proceso de configuración no podría ser más sencillo. Al ingresar por primera vez nos pedirá las credenciales de inicio de sesión que hemos especificado al crear el Docker-Compose.
Una vez dentro, nos aparecerán todos nuestros Dockers (podemos especificar que nos muestre incluso los parados).
Una de las funciones destacadas de Dozzle, es la posibilidad de tener una vista Split-View para mostrar 2 servicios simultáneos. También nos ofrece la función de poder parar o reiniciar el Docker.
¡A disfrutarlo!