Herramientas de usuario

Herramientas del sitio


informatica:software:gluetun

Gluetun VPN client

Instalación

Ejemplo para Proton VPN:

version: "3"
services:
  gluetun:
    image: qmcgaw/gluetun
    cap_add:
      - NET_ADMIN
    devices:
      - /dev/net/tun:/dev/net/tun
    environment:
      - VPN_SERVICE_PROVIDER=protonvpn
      - VPN_TYPE=wireguard
      - WIREGUARD_PRIVATE_KEY=wOEI9rqqbDwnN8/Bpp22sVz48T71vJ4fYmFWujulwUU=
      - SERVER_COUNTRIES=Netherlands

Para todos aquellos contenedores a los que queramos acceder desde Gluetun, tendremos que publicar sus puertos en el contendor de Gluetun. Por ejemplo, para acceder al puerto 9000 del contenedor ABC conectado a Gluetun, tendríamos que definir de la siguiente manera el contenedor:

version: "3"
services:
  gluetun:
    image: qmcgaw/gluetun
    cap_add:
      - NET_ADMIN
    devices:
      - /dev/net/tun:/dev/net/tun
    environment:
      - VPN_SERVICE_PROVIDER=protonvpn
      - VPN_TYPE=wireguard
      - WIREGUARD_PRIVATE_KEY=wOEI9rqqbDwnN8/Bpp22sVz48T71vJ4fYmFWujulwUU=
      - SERVER_COUNTRIES=Netherlands
    ports:
      - 9000:9000 # Contenedor "ABC"

Uso

Contenedor externo a Gluetun

Para que un contenedor utilice Glutun, añadimos la opción --network=container:<CONTENEDOR_GLUETUN>. Por ejemplo, si el contenedor con Gluetun se llama contenedor_gluetun, podríamos lanzar un nuevo contenedor con Firefox y decirle que lo utilice:

docker run -d --name firefox \
           --network=container:contenedor_gluetun \
           -e TZ=Europe/Madrid \
           -e PUID=1000 \
           -e PGID=100 \
           -v /ruta/local:/config
           --shm-size="1gb" \
           linuxserver/firefox

En el contenedor de Gluetun tendríamos que habilitar un puerto desde el que poder acceder a este firefox del contenedor. Sabiendo que el contenedor con Firefox utiliza los puertos 3000 y 3001, podríamos crear así el contenedor de Gluetun:

version: "3"
services:
  gluetun:
    image: qmcgaw/gluetun
    cap_add:
      - NET_ADMIN
    devices:
      - /dev/net/tun:/dev/net/tun
    environment:
      - VPN_SERVICE_PROVIDER=protonvpn
      - VPN_TYPE=wireguard
      - WIREGUARD_PRIVATE_KEY=wOEI9rqqbDwnN8/Bpp22sVz48T71vJ4fYmFWujulwUU=
      - SERVER_COUNTRIES=Netherlands
    ports:
      - 9000:3000 # Firefox HTTP
      - 9001:3001 # Firefox HTTPS

Contenedor en otro docker-compose.yml

Ejemplo de fichero docker-compose.yml con el contenedor de Firefox:

---
services:
  firefox:
    image: lscr.io/linuxserver/firefox:latest
    container_name: firefox
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/madrid
    volumes:
      - /path/to/config:/config
    shm_size: "1gb"
    network_mode: "container:<NOMBRE_CONTENEDOR_GLUETUN>"
    restart: unless-stopped
informatica/software/gluetun.txt · Última modificación: por tempwin