====== Gluetun VPN client ======
* [[https://github.com/qdm12/gluetun|Repositorio de código]]
* [[https://github.com/qdm12/gluetun-wiki|Documentación]]
===== 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:%%''. Por ejemplo, si el contenedor con Gluetun se llama ''contenedor_gluetun'', podríamos lanzar un nuevo [[https://github.com/linuxserver/docker-firefox|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 [[https://github.com/linuxserver/docker-firefox|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:"
restart: unless-stopped