Blog del Podcast
podcast      GitHub      Twitter   Telegram

Docker: Duck DNS. Facilitando la conexión a tus servicios

Tiempo estimado de lectura: 4 minutos. 458 palabras. docker

La mayor parte de la gente, tiene una conexión a internet con ip dinámica. Esto quiere decir, que la dirección ip va cambiando de tanto en tanto. No es fija.

Esto puede ser un gran problema si queremos conectarnos desde fuera de nuestra red, a un servicio que tenemos en nuestro servidor. Si la compañía cambia la ip en ese momento, nunca encontraremos nuestro servidor. Para solucionar este problema podemos utilizar servicios DNS como Duck DNS.

Tal como expliqué en el artículo del Docker de Letsencript, podemos crear una cuenta con un dominio o hasta 5 de forma gratuita y ejecutando un script en nuestro servidor, en nuestra red local, este script enviará cual es nuestra ip a Duck DNS, para que cada vez que introduzcamos el dominio que registramos en Duck DNS, redirija el tráfico hasta nuestra casa.

Yo finalmente por comodidad, he montado un docker de la comunidad LinuxServer que incluye este script. De esta manera solo tengo que programar en que momento del día quiero que se inicie este docker y él se encargará de enviar esta información.

Docker Duck DNS

Este es un ejemplo de como montar el docker. Tienes que sustituir SUBDOMAINS, en este ejemplo correspondería con la dirección ugeekpodcast.duckdns.org y angel.duckdns.org, el TOKEN aparece en la página de Duck DNS y TZ corresponde con la hora local del lugar donde vivas.

docker create \
  --name=duckdns \
  -e PGID=1000 -e PUID=1000  \
  -e SUBDOMAINS=ugeekpodcast,angel \
  -e TOKEN=adbqergh-av7654qwerg-qerg456-45qrg \
  -e TZ=Europe/Madrid \
  lsioarmhf/duckdns

Es un Token de ejemplo falso

El script se ejecuta cada 5 minutos y envía nuesta IP a los servidores de Duck DNS.

Cambiar la periocidad de ejecución

Para cambiar el tiempo de ejecución del script y que no sea cada 5 minutos, lo haremos de la siguiente manera:

Entraremos dentro del contenedor

docker exec -it duckdns /bin/bash

Editamos cron

crontab -e -u abc

En mi caso, voy ha hacer que se ejecute cada 30 minutos

*/30 * * * * /app/duck.sh 2>&1

Ver que todo va ok

Para comprobar que todo funcion bien, haremos un log del contenedor y veremos cada cuanto se ejecuta el script

docker logs -f duckdns

Fuentes


Publicado por Angel el Wednesday 09 October del 2019



También te puede interesar:




Powered by org-bash-blog

Written in OrgMode with Emacs and converted to HTML with Pandoc

Licencia de Creative Commons
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional.