• 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Docker de Changedetection
#1
ANTECEDENTES:


Este contenedor se puede instalar de mil maneras y por lo pronto tenemos dos opciones básicas, la original y la versión de linuxserver que son mantenidas por los mismos desarrolladores aunque se instalan de forma distinta. La versión original es la que más versiones tiene para instalar prácticamente lo mismo y tengo que decir que me ha dado muchos quebraderos de cabeza probándolas, unas veces porque sin venir a cuento te crea una nueva red docker distinta a la existente en el nas y que da problemas de cara a las notificaciones, otras veces porque no se consigue instalar la versión completa del contenedor, instalarse se instala pero otra cosa distinta es hacer que funcione, algunas cosas van bien pero otras no. A la hora de instalar la versión completa hay que instalar un segundo contenedor asociado al principal, y ese segundo contenedor es un navegador que puede ser Edge, Firefox o Chrome. Con respecto a esto último le ocurre igual que al contenedor principal, hay mil formas de hacerlo y a pesar de que he probado muchas de ellas no he conseguido hacerlo funcionar corréctamente. En fin, este tutorial va a estar basado en lo que tengo probado que funciona, es decir, instalar el contenedor principal sin el añadido del segundo contenedor. Lógicamente podéis buscar información sobre esto e intentar hacer que funcione la versión completa.


INTRODUCCION:


Por lo que tengo visto este contenedor se usa mayoritáriamente para monitorizar, por ejemplo, webs como Amazon y que controle el cambio de precio de un producto que nos interese. Personálmente esta función no me interesa así que este tutorial va a servir para explicar el segundo modo de funcionamiento que tiene el contenedor que consiste en monitorizar la web o el apartado de una web que nos interese para que cuando se produzca un cambio nos lo notifique. Para que se entienda en que consiste esto pongo un par de ejemplos:

 - Monitorizar el apartado correspondiente a la descarga de firmwares de la placa base de un ordenador.

 - Monitorizar el apartado de descargas de actualizaciones de una aplicación que nos interese.

Estos serían dos mínimos ejemplos de lo que se podría hacer y están centrados en monitorizar cosas que no cambian todos los dias y que no nos podemos enterar de la existencia de cambios por ningún otro sistema salvo lógicamente acceder a esas webs de vez en cuando para comprobarlo manuálmente. Lógicamente las cosas que se pueden monitorizar son prácticamente infinitas como infinitas son las webs existentes, foros y demás.


INSTALACION:


Como he comentado antes sólo voy a explicar la instalación sencilla del contenedor, para hacerlo accedemos por SSH a nuestro nas y ejecutamos en el Terminal los siguientes parámetros:


docker run -d \
  --name=changedetection.io \
  -e PUID=1000 \
  -e PGID=100 \
  -e TZ=Europe/Madrid \
  -e BASE_URL= `#optional` \
  -e PLAYWRIGHT_DRIVER_URL= `#optional` \
  -p 5000:5000 \
  -v /share/CACHEDEV2_DATA/DockerData/changedetection.io/config:/config \
  --restart always \
  lscr.io/linuxserver/changedetection.io:latest


De los parámetros puestos sólo tenemos que comprobar que el PUID y el PGID son correctos, que suelen serlos, y modificar la ruta de nuestro nas en la que queremos que se guarde la configuración del contenedor.

Una vez instalado accedemos al contenedor con un navegador en la ip   http://ipdelnas:5000



FUNCIONAMIENTO:


Como comenté antes no me voy a centrar en el funcionamiento del contenedor a la hora de controlar variaciones de precio en Amazon, pero si voy a explicar algunas configuraciones aunque no todas que hay que tener en cuenta en ciertos casos.

Cuando accedemos por primera vez al contenedor nos aparecerá algo parecido a esto:



   



Digo parecido porque os encontraréis un par de webs ya configuradas que lo normal es eliminarlas, la que se ve en la imagen la he puesto yo. Se puede ver también que a la hora de añadir una nueva web a monitorizar por defecto está configurada a controlar los cambios de texto - html si quisiéramos optar por controlar la variación de precios de un producto lo podemos cambiar aquí. Antes de continuar con la explicación el contenedor tiene unos ajustes generales que sirven para todas las webs que pongamos a monitorizar, si estamos contentos con ese sistema bien, si en el caso de querer modificar ese comportamiento en una web en concreto lo podemos hacer sin problemas.



   



Cuando añadimos una nueva web podemos ver que tenemos una buena cantidad de opciones pero vuelvo a repetir que existen unas opciones globales así que sólo tocaremos cuando queramos un comportamiento distinto del general.



   



Esto lo tenemos que dejar tal cual, para poder usar la opción Webdriver Chrome tendríamos que instalar el segundo contenedor del navegador que comenté al principio.

Para continuar con el ejemplo de utilización del contenedor lo voy a hacer con el apartado de Github correspondiente a las actualizaciones del contenedor Calibre-web:       https://github.com/janeczku/calibre-web/...tag/0.6.23



   



Al ser una web alojada en Github lógicamente tanto los Issues como los Pull Requests van a sufrir cambios constántemente y como el contenedor lo que hace es monitorizar los cambios nos va a estar molestando cada momento.



   



Lo mismo ocurre si alguien pone un emoji favorable, para evitar esto en el contenedor lo que tenemos que hacer es poner filtros:



   



En el apartado Ignore text de la web que vamos a monitorizar a través del contenedor ponemos las palabras de las que no queremos que nos notifique cambios. Sobre esto cada web es un mundo y tendremos que ir afinando a través de prueba-error hasta conseguir los resultados deseados aunque no es difícil. No es complicado porque una vez que hayamos configurado una web el contenedor hace una primera comprobación y la podemos ver dándole al botón Preview de la web que vamos a monitorizar en la pantalla principal del contenedor. Continuando con el ejemplo al haber filtrado préviamente la palabra emoji si ocurre un posterior cambio no se nos va a notificar:



   


Lo mismo con los Issues y demás:



   



Lo interesante de este contenedor no es sólo que monitorice y controle los cambios de la web que queramos sino que cuando existan nos lo comunique. Este contenedor admite más de 80 servicios de notificación y uno de los más interesantes es a través de un bot de Telegram:

https://www.qnapclub.es/showthread.php?tid=3968


Una vez que tengamos nuestro bot con su Token y su Chat ID se lo ponemos en el apartado correspondiente de las opciones del contenedor, el formato a la hora de ponerlo es el siguiente:

tgram://token/chatid/



   



Un ejemplo de notificación del contenedor a través del bot:



   



Recibiremos una notificación cuando la web monitorizada sufra un cambio y el mensaje consistirá en los cambios producidos que pueden variar enórmemente dependiendo de como hayamos configurado esa web en el contenedor y sus excepciones a notificar. Personálmente pienso que aunque configuremos bien las excepciones el contenido de la notificación casi es lo de menos, al menos en mi caso lo que me importa es que si monitorizo una web o un apartado de esa web que cambia muy ocasionálmente con que me lo notifique tengo suficiente, una vez notificado ya accederé posteriórmente con un ordenador y comprobaré los cambios. En fin, sobre gustos no hay nada escrito.
  Reply




Users browsing this thread: 1 Guest(s)