Traefik en Linux Mint con Docker

Publicado: 2023-02-01

Ya tengo Plex, jDownloader, y qbittorrent, lo que implica que tengo al menos tres servicios a los cuales acceder sobre la misma IP.

El problema es que, dado que se comparte la misma IP pero en diferente puerto, no puedo redireccionar a algo como plex.local, jd.local y t.local, porque no puedo especificar el puerto así como así.

Aquí es donde entra un reverse proxy. Los detalles técnicos son más complejos, pero solo digamos que nos permite poner un nombre decente a una dirección más un puerto.

Para ello existe Traefik, que instalaremos como contenedor de Docker. Dado que ya tengo Docker Compose y una guía que usa ese comando y sintaxis para levantar Traefik, así lo haremos:

# Crear directorio para la configuración del contenedor.
sudo mkdir -p /opt/containers/traefik
# Editar el archivo docker-compose.yml
sudo vim /opt/containers/traefik/docker-compose.yml

Y el contenido:

version: '3'

services:
  reverse-proxy:
    image: traefik:v2.5
    container_name: traefik
    ports:
      - 80:80
      - 8080:8080
      - 443:443
    volumes:
      - /opt/containers/traefik/traefik.yml:/etc/traefik/traefik.yml
      - /var/run/docker.sock:/var/run/docker.sock

Y también creamos el archivo traefik.yml que referenciamos como volumen en /opt/containers/traefik/traefik.yml, con el contenido:

entryPoints:
  web:
    address: :80
  websecure:
    address: :443
api:
  insecure: true
providers:
  docker:
    endpoint: "unix:///var/run/docker.sock"

Listo. Se puede levantar Traefik con:

docker-compose up -d

Y ya deberíamos poder ver el panel de control en el puerto :8080.

Con eso no hemos hecho mucho, pero ya tenemos Traefik. Al ir agregando servicios veremos cómo es que podemos usarlo para nuestros fines.

¿Tienes algún comentario?

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *