Web Analytics

gluetun-webui

⭐ 288 stars Hindi by Sir-Scuzza

🌐 भाषा

Gluetun WebUI

Gluetun — Docker के लिए वीपीएन क्लाइंट कंटेनर की निगरानी और नियंत्रण हेतु एक हल्का वेब यूआई।

स्थिति: कनेक्टेड Node 25 Docker


विशेषताएँ

---

स्क्रीनशॉट्स

alt text


आवश्यकताएँ

> linux/amd64 और linux/arm64 को समर्थन करता है (Mac Intel/Apple Silicon, Linux, और Windows पर काम करता है)।


त्वरित प्रारंभ

विकल्प A1: एकल इंस्टेंस (अनुशंसित)

अपने मौजूदा कंपोज़ फ़ाइल में Gluetun के साथ gluetun-webui जोड़ें:

gluetun-webui:
  image: scuzza/gluetun-webui:latest
  container_name: gluetun-webui
  ports:
    
  • "127.0.0.1:3000:3000"
environment:
  • GLUETUN_CONTROL_URL=http://gluetun:8000
# Uncomment if Gluetun auth is enabled: #- GLUETUN_API_KEY=yourtoken #- GLUETUN_USER=username #- GLUETUN_PASSWORD=password networks:
  • your_network_name
restart: unless-stopped read_only: true tmpfs:
  • /tmp
security_opt:
  • no-new-privileges:true
cap_drop:
  • ALL
healthcheck: test: ["CMD", "wget", "-qO-", "http://localhost:3000/api/health"] interval: 30s timeout: 5s start_period: 10s retries: 3

विकल्प A2: एकाधिक उदाहरण

अलग-अलग डैशबोर्ड के साथ 2 या अधिक Gluetun उदाहरणों की निगरानी करें:

gluetun-webui:
  image: scuzza/gluetun-webui:latest
  container_name: gluetun-webui
  ports:
    
  • "127.0.0.1:3000:3000"
environment:
  • GLUETUN_1_NAME=VPN - London
  • GLUETUN_1_URL=http://gluetun-1:8000
  • GLUETUN_1_API_KEY=token1
  • GLUETUN_2_NAME=VPN - Amsterdam
  • GLUETUN_2_URL=http://gluetun-2:8000
  • GLUETUN_2_API_KEY=token2
  • GLUETUN_3_NAME=VPN - Singapore
  • GLUETUN_3_URL=http://gluetun-3:8000
  • GLUETUN_3_API_KEY=token3
networks:
  • your_network_name
restart: unless-stopped read_only: true tmpfs:
  • /tmp
security_opt:
  • no-new-privileges:true
cap_drop:
  • ALL

विकल्प बी: स्थानीय रूप से निर्माण करें

git clone https://github.com/Sir-Scuzza/gluetun-webui.git
cd gluetun-webui
docker compose up -d --build
फिर चलाएँ (कोई भी विकल्प):

docker compose up -d

UI http://localhost:3000 पर उपलब्ध है


नेटवर्क सेटअप

Gluetun और gluetun-webui दोनों को एक ही Docker नेटवर्क पर होना चाहिए ताकि http://gluetun:8000 सही से हल हो सके।

एक ही compose फ़ाइल — बस दोनों सेवाओं को एक ही नेटवर्क में जोड़ें (सबसे आम तरीका):

services:
  gluetun:
    networks:
      
  • arr-stack
gluetun-webui: networks:
  • arr-stack
networks: arr-stack: driver: bridge

अलग-अलग कंपोज़ फाइलें — Gluetun के मौजूदा नेटवर्क को बाहरी के रूप में संदर्भित करें। अपने नेटवर्क का नाम docker network ls से खोजें:

networks:
  ext-network:
    external: true
    name: your_gluetun_network_name


मल्टी-VPN समर्थन

कई इंस्टेंस

gluetun-webui कई Gluetun इंस्टेंस को एक साथ मॉनिटर और नियंत्रित करने का समर्थन करता है। प्रत्येक इंस्टेंस एक उत्तरदायी ग्रिड में अलग डैशबोर्ड के रूप में प्रदर्शित होता है।

कॉन्फ़िगरेशन: क्रमांकित एनवायरनमेंट वेरिएबल्स का उपयोग करें:

gluetun-webui:
  image: scuzza/gluetun-webui:latest
  environment:
    # Instance 1
    
  • GLUETUN_1_NAME=VPN 1
  • GLUETUN_1_URL=http://gluetun-1:8000
  • GLUETUN_1_API_KEY=token1 # optional
# Instance 2
  • GLUETUN_2_NAME=VPN 2
  • GLUETUN_2_URL=http://gluetun-2:8000
  • GLUETUN_2_API_KEY=token2 # optional
# Instance 3
  • GLUETUN_3_NAME=VPN 3
  • GLUETUN_3_URL=http://gluetun-3:8000
  • GLUETUN_3_USER=admin
  • GLUETUN_3_PASSWORD=secret # optional (HTTP Basic auth)

समर्थित: 20 तक इंस्टेंस ( GLUETUN_1_URL से लेकर GLUETUN_20_URL तक) उत्तरदायी: 1 फुल-विथ डैशबोर्ड → 2 हाफ-विथ → 3 थर्ड-विथ → 4 क्वार्टर-विथ → 5+ पर स्क्रॉल योग्य

पिछड़ी संगतता

यदि कोई क्रमांकित वेरिएबल्स कॉन्फ़िगर नहीं किए गए हैं, तो पुराने सिंगल-इंस्टेंस मोड में लौट जाता है:

environment:
  
  • GLUETUN_CONTROL_URL=http://gluetun:8000 # legacy
  • GLUETUN_API_KEY=token

प्रति-इंस्टेंस प्रमाणीकरण

प्रत्येक इंस्टेंस में अलग प्रमाणीकरण हो सकता है:

# Instance with API key
  • GLUETUN_1_API_KEY=my-secret-token

Instance with HTTP Basic auth

  • GLUETUN_2_USER=admin
  • GLUETUN_2_PASSWORD=mysecret

Instance with no auth

  • GLUETUN_3_URL=http://gluetun-3:8000 # auth optional
---

कॉन्फ़िगरेशन

| वेरिएबल | डिफ़ॉल्ट | विवरण | |---|---|---| | GLUETUN_1_ से GLUETUN_20_ | _(खाली)_ | मल्टी-इंस्टेंस कॉन्फ़िग (20 तक इंस्टेंस) | | GLUETUN_{N}_URL | – | इंस्टेंस N के लिए Gluetun HTTP कंट्रोल सर्वर URL | | GLUETUN_{N}_NAME | इंस्टेंस {N} | इंस्टेंस N के लिए डिस्प्ले नाम | | GLUETUN_{N}_API_KEY | _(खाली)_ | इंस्टेंस N के लिए बियरर टोकन (यदि ऑथ सक्षम है) | | GLUETUN_{N}_USER | _(खाली)_ | HTTP बेसिक ऑथ के लिए यूज़रनेम (इंस्टेंस N) | | GLUETUN_{N}_PASSWORD | _(खाली)_ | HTTP बेसिक ऑथ के लिए पासवर्ड (इंस्टेंस N) | | GLUETUN_CONTROL_URL | http://gluetun:8000 | लीगेसी – केवल एकल इंस्टेंस (यदि कोई GLUETUN_1_* वेरिएबल नहीं है तो फॉलबैक) | | GLUETUN_API_KEY | _(खाली)_ | लीगेसी – एकल इंस्टेंस के लिए बियरर टोकन | | GLUETUN_USER | _(खाली)_ | लीगेसी – HTTP बेसिक ऑथ के लिए यूज़रनेम | | GLUETUN_PASSWORD | _(खाली)_ | लीगेसी – HTTP बेसिक ऑथ के लिए पासवर्ड | | PORT | 3000 | पोर्ट जिस पर वेब UI सुनता है | | TRUST_PROXY | false | यदि रिवर्स प्रॉक्सी (nginx, Traefik, आदि) के पीछे चला रहे हैं तो true सेट करें |


सुरक्षा

रिवर्स-प्रॉक्सी कॉन्फ़िगरेशन

यदि आप gluetun-webui को रिवर्स प्रॉक्सी (nginx, Traefik, Caddy, आदि) के पीछे चलाते हैं, तो अपने एनवायरनमेंट वेरिएबल्स में TRUST_PROXY=true सेट करें:

gluetun-webui:
  image: scuzza/gluetun-webui:latest
  environment:
    
  • GLUETUN_CONTROL_URL=http://gluetun:8000
  • TRUST_PROXY=true # Required for reverse proxies
यह ऐप को X-Forwarded-For और संबंधित हेडर को सही ढंग से पार्स करने की अनुमति देता है, जिससे सटीक रेट लिमिटिंग और IP डिटेक्शन संभव होती है। नोट: इसे केवल तभी सक्षम करें जब आप वास्तव में एक रिवर्स प्रॉक्सी के पीछे हों, क्योंकि यह आपके रिवर्स प्रॉक्सी से प्रॉक्सी हेडर पर भरोसा करता है।

रिवर्स-प्रॉक्सी प्रमाणीकरण

VPN स्टार्ट/स्टॉप नियंत्रणों में कोई अंतर्निर्मित प्रमाणीकरण नहीं है। यदि आप UI को लोकलहोस्ट से परे एक्सपोज करते हैं, तो इसे HTTP बेसिक ऑथ के साथ एक रिवर्स प्रॉक्सी के पीछे रखें।

Caddy (Caddyfile):

your.domain.com {
  basicauth {
    user $2a$14$
  }
  reverse_proxy localhost:3000
}
हैश जनरेट करें: caddy hash-password

Nginx (nginx.conf):

location / {
  auth_basic "Restricted";
  auth_basic_user_file /etc/nginx/.htpasswd;
  proxy_pass http://localhost:3000;
}
एक पासवर्ड फ़ाइल जनरेट करें: htpasswd -c /etc/nginx/.htpasswd user

Traefik (डॉकर लेबल्स):

labels:
  
  • "traefik.enable=true"
  • "traefik.http.routers.gluetun-webui.rule=Host(your.domain.com)"
  • "traefik.http.routers.gluetun-webui.middlewares=auth"
  • "traefik.http.middlewares.auth.basicauth.users=user:$$apr1$$"
हैश जनरेट करें: htpasswd -nb user password


आभार

---

लाइसेंस

MIT

--- Tranlated By Open Ai Tx | Last indexed: 2026-05-29 ---