Technical Anshu હોમ › ટ્યુટોરિયલ્સ › Nginx પ્રોક્સી મેનેજર ઇન્સ્ટોલ કરો
🐳 ડોકર રિવર્સ પ્રોક્સી

Nginx પ્રોક્સી મેનેજર ઇન્સ્ટોલ - 2-મિનિટ સેટઅપ માર્ગદર્શિકા

તમારી સેવાઓ હાલમાં 192.168.1.50:8080 જેવા નીચ સરનામાં પર રહે છે. Nginx પ્રોક્સી મેનેજર તેમને મફત HTTPS સાથે app.yourdomain.com જેવા સ્વચ્છ નામોમાં ફેરવે છે - એક ડોકર કમ્પોઝ ફાઇલ સાથે ઇન્સ્ટોલ કરેલું છે અને હાથથી લખેલી રૂપરેખા ફાઇલોને બદલે એક સરળ વેબ પેનલથી સંચાલિત થાય છે.

✍️ Technical Anshu🐳 Docker Compose🎧 Multi-Language Audio
Nginx પ્રોક્સી મેનેજર ઇન્સ્ટોલ - 2-મિનિટ સેટઅપ માર્ગદર્શિકા
🎧 Multi-Language Audio: Video player [Settings] (⚙️) ➔ [Audio Track]

📑પ્રકરણો

  1. રિવર્સ પ્રોક્સી શું કરે છે - તમારી બધી સેવાઓ માટે એક દરવાજો
  2. શરૂ કરતા પહેલા તમારે શું જોઈએ છે - ડોકર, એક ડોમેન અને પહોંચી શકાય તેવા પોર્ટ્સ
  3. કંઈપણ ઇન્સ્ટોલ કરતા પહેલા તમારા ડોમેન DNS ને સર્વર પર નિર્દેશિત કરો
  4. ફોલ્ડર અને docker-compose.yml ફાઇલ બનાવો
  5. એક આદેશ સાથે Nginx પ્રોક્સી મેનેજર શરૂ કરો
  6. પ્રથમ લૉગિન - એડમિન એકાઉન્ટ પગલું દરેકને ખોટું થાય છે
  7. તમારું પ્રથમ પ્રોક્સી હોસ્ટ બનાવો, ફીલ્ડ બાય ફીલ્ડ
  8. મફત Lets Encrypt HTTPS પ્રમાણપત્ર મેળવો અને ફોર્સ SSL ચાલુ કરો

📋 વિહંગાવલોકન અને પગલું-દર-પગલાની માર્ગદર્શિકા

1

શરૂ કરતા પહેલા તમારે શું જોઈએ છે

Nginx પ્રોક્સી મેનેજર (NPM) કામ કરી શકે તે પહેલાં ત્રણ વસ્તુઓ અસ્તિત્વમાં હોવી જોઈએ. પ્રથમ, ડોકર અને ડોકર કમ્પોઝ સાથેનું Linux સર્વર અથવા પીસી પહેલેથી જ ઇન્સ્ટોલ કરેલું અને કાર્ય કરે છે - NPM એક કન્ટેનર તરીકે ચાલે છે, સામાન્ય પ્રોગ્રામ તરીકે નહીં. બીજું, એક ડોમેન નામ જેનું DNS તમે સંપાદિત કરી શકો છો, કારણ કે દરેક સેવાને તેનું પોતાનું સબડોમેન મળે છે. ત્રીજું, તમારું રાઉટર અથવા ક્લાઉડ ફાયરવોલ આ મશીન પર પોર્ટ 80 અને 443 ફોરવર્ડ કરવામાં સક્ષમ હોવું જોઈએ.

📌 શીર્ષકમાં "2 મિનિટ" વિશે: કન્ટેનર પોતે જ ખરેખર ઝડપી છે - પરંતુ માત્ર એકવાર ડોકર પહેલેથી ઇન્સ્ટોલ થઈ જાય અને આ માર્ગદર્શિકામાં તૈયારી થઈ જાય. નવી મશીન પર, સેટઅપ, DNS અને પ્રમાણપત્ર પગલાં માટે યોગ્ય સમય આપો; પ્રમાણિક કુલ બે મિનિટ કરતાં વધુ લાંબો છે.
⚠️ CGNAT ની પાછળના હોમ કનેક્શન પર, પોર્ટ ફોરવર્ડિંગ બિલકુલ કામ કરી શકતું નથી - NPM ની અંદર કોઈ સેટિંગ તેને ઠીક કરતું નથી. પછી પ્રામાણિક વિકલ્પો તમારા ISP તરફથી સાર્વજનિક/સ્થિર IP, એક નાનું ભાડે આપેલ VPS અથવા તેના બદલે ટનલ ટૂલ છે. આ ચેક છોડશો નહીં: બધી "NPM કામ કરતું નથી" વાર્તાઓમાંથી અડધી વાર્તાઓ ખરેખર "બંદરો ક્યારેય સર્વર સુધી પહોંચી નથી" વાર્તાઓ છે.
2

તમારા ડોમેન DNS ને પહેલા સર્વર તરફ નિર્દેશ કરો

NPM ટ્રાફિકને નામ દ્વારા રૂટ કરે છે, અને Encrypt ફક્ત એવા નામો માટે પ્રમાણપત્રો જારી કરે છે જે તમારા મશીન પર સંભવિતપણે નિર્દેશ કરે છે - તેથી તમે તેના પર કંઈપણ બનાવતા પહેલા નામને ઉકેલવું પડશે. તમારા રજિસ્ટ્રાર અથવા DNS હોસ્ટ પર, એક રેકોર્ડ ઉમેરો: નામ એ માત્ર સબડોમેન શબ્દ છે (ઉદાહરણ તરીકે app) અને મૂલ્ય એ તમારા સર્વરનું સાર્વજનિક IP સરનામું છે. દરેક સેવાને તેનો પોતાનો રેકોર્ડ મળે છે, અને તે બધા એક જ IP પર નિર્દેશ કરી શકે છે - NPM સેવાઓને પછીથી, નામ દ્વારા અલગ કરે છે. પરીક્ષણ કરતી વખતે 300 સેકન્ડ જેવા ટૂંકા TTL સેટ કરો, જેથી ભૂલો કલાકોને બદલે મિનિટોમાં ઓછી થઈ જાય.

તમે ચાલુ રાખો તે પહેલાં તેને સાબિત કરો: તપાસો કે નામ બહારના નેટવર્કથી તમારા સાર્વજનિક IP પર રિઝોલ્યુશન કરે છે (ઉદાહરણ તરીકે તમારા ફોનમાંથી Wi-Fi બંધ છે). તૂટેલા DNS કચરો સામે પ્રમાણપત્રની વિનંતી કરવાથી એન્ક્રિપ્ટના પ્રયાસો થવા દે છે અને વારંવાર નિષ્ફળતા તમને કલાકો માટે રેટ-મર્યાદિત કરી શકે છે. ઓર્ડર મહત્વપૂર્ણ છે: DNS પ્રથમ, પ્રોક્સી હોસ્ટ બીજું, પ્રમાણપત્ર ત્રીજું.

3

ફોલ્ડર અને કંપોઝ ફાઇલ બનાવો

સર્વર પર NPM માટે ફોલ્ડર બનાવો અને તેની અંદર નીચેની ફાઇલને docker-compose.yml તરીકે સાચવો. આ એક ફાઇલ સંપૂર્ણ ઇન્સ્ટોલેશન છે. છબીનું નામ સત્તાવાર સમુદાયની છબી છે. પોર્ટ્સ 80 અને 443 એ સાર્વજનિક દરવાજા છે, પોર્ટ 81 એ એડમિન પેનલ છે, અને બે વોલ્યુમો એ છે જ્યાં તમારું સંપૂર્ણ સેટઅપ રહે છે: ./data તમારા બધા પ્રોક્સી હોસ્ટ્સ સાથે ડેટાબેઝ ધરાવે છે, અને ./letsencrypt તમારા પ્રમાણપત્રો ધરાવે છે. તે બે ફોલ્ડર્સ ગુમાવો અને તમે આખું સેટઅપ ગુમાવશો - એકવાર વસ્તુઓ ચાલુ થઈ જાય તે પછી તેનો બેકઅપ લો.

docker-compose.yml
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      - '80:80'
      - '443:443'
      - '81:81'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt

પુનઃપ્રારંભ કરો: જ્યાં સુધી-રોકો નહીં લાઇન રીબૂટ પછી NPM ને આપમેળે પાછું લાવે છે.

4

Nginx પ્રોક્સી મેનેજર શરૂ કરો

તે ફોલ્ડરની અંદરથી, સ્ટાર્ટ કમાન્ડ ચલાવો. ડોકર ઇમેજ ડાઉનલોડ કરે છે અને બેકગ્રાઉન્ડમાં કન્ટેનર શરૂ કરે છે.

Terminal
docker compose up -d

તપાસો કે તે ચાલી રહ્યું છે:

Terminal
docker ps

તમારે પોર્ટ 80, 443 અને 81 સાથે સૂચિબદ્ધ કન્ટેનર જોવું જોઈએ. ડેટાબેઝ બનાવવામાં આવે ત્યારે નાના સર્વર પર પ્રથમ પ્રારંભમાં એક કે બે મિનિટ લાગે છે. જો કન્ટેનર પુનઃપ્રારંભ કરવાનું ચાલુ રાખે છે, તો લોગ સાદી ભાષામાં કારણ બતાવે છે:

Terminal
docker compose logs

દસમાંથી નવ વખત પુનઃપ્રારંભ લૂપ એ એક પોર્ટ છે જે પહેલાથી જ હોસ્ટ પર અન્ય કોઈ વસ્તુ દ્વારા ઉપયોગમાં લેવાય છે - સામાન્ય રીતે જૂનું વેબ સર્વર હજી પણ ચાલી રહ્યું છે.

5

પ્રથમ લોગિન - તરત જ એડમિન એકાઉન્ટને સુરક્ષિત કરો

તમારા પોતાના નેટવર્ક પર બ્રાઉઝરમાં એડમિન પેનલ ખોલો:

Browser Address Bar
http://your-server-ip:81

આ પ્રથમ મિનિટમાં કરો. બિલ્ડ પર આધાર રાખીને, NPM કાં તો તમને તમારા પોતાના ઈમેલ અને મજબૂત પાસવર્ડ સાથે જાણીતા ફર્સ્ટ-લૉગિન એડમિનિસ્ટ્રેટર વિગતો બદલવાનું કહે છે અથવા - કોઈ ડિફોલ્ટ એકાઉન્ટ વગરના નવા બિલ્ડ્સ પર - એડમિન પેજ ખોલનાર પ્રથમ વ્યક્તિ એડમિનિસ્ટ્રેટર બનાવે છે. કોઈપણ રીતે નિયમ સમાન છે: કન્ટેનર શરૂ થાય તે ક્ષણે તમારું પોતાનું એડમિન એકાઉન્ટ સેટ કરો, બીજું કંઈપણ બનાવતા પહેલા, અને વાસ્તવિક મેઈલબોક્સનો ઉપયોગ કરો - NPM ઇમેઇલ્સ કે જે પ્રમાણપત્રની સમસ્યાઓને સંબોધિત કરે છે.

⚠️ જ્યારે તમે તેને "પછીથી સમાપ્ત કરો" ત્યારે પોર્ટ 81 ને ક્યારેય સાર્વજનિક રૂપે પહોંચવા યોગ્ય ન છોડો. ઈન્ટરનેટ પર જે કોઈપણ પેનલ શોધે છે તે સૌ પ્રથમ તમારી પ્રોક્સીની માલિકી ધરાવે છે. એડમિન પેનલને ફક્ત તમારા પોતાના નેટવર્ક પર રાખો.
6

તમારું પ્રથમ પ્રોક્સી હોસ્ટ બનાવો

NPM માં હોસ્ટ્સ → પ્રોક્સી હોસ્ટ્સ → પ્રોક્સી હોસ્ટ ઉમેરો ખોલો અને એક વાક્ય તરીકે ફોર્મ ભરો - "આ નામ તે આંતરિક સેવામાં જાય છે":

ડોમેન નામો: app.yourdomain.com - પગલું 2 નું ચોક્કસ સાર્વજનિક નામ, જે તમારા સર્વર પર પહેલાથી જ ઉકેલાયેલ હોવું જોઈએ.
યોજના: http મોટાભાગની હોમ અને ઑફિસ ઍપ માટે. યોજના NPM અને આંતરિક સેવા વચ્ચેના જોડાણનું વર્ણન કરે છે, મુલાકાતીઓ શું ઉપયોગ કરે છે તે નહીં - NPM દરવાજા પર જાહેર એન્ક્રિપ્શનનું સંચાલન કરે છે. જ્યારે આંતરિક એપ્લિકેશન પોતે HTTPS સેવા આપે ત્યારે જ અહીં https પસંદ કરો.
ફોરવર્ડ હોસ્ટનામ / IP: સેવાનું આંતરિક સરનામું, ઉદાહરણ તરીકે 192.168.1.50.
ફોરવર્ડ પોર્ટ: જે પોર્ટ પર સેવા ખરેખર સાંભળે છે, ઉદાહરણ તરીકે 8080 - 80 અથવા 443 નહીં; તે NPM ના દરવાજા છે, સેવાના નથી.

સામાન્ય શોષણને અવરોધિત કરો ચાલુ કરો, પછી સાચવો. બ્રાઉઝરમાં નામ ખોલીને તરત જ પરીક્ષણ કરો - આદર્શ રીતે તમારા ફોનમાંથી Wi-Fi બંધ હોય, જેથી તમે વાસ્તવિક સાર્વજનિક પાથનું પરીક્ષણ કરો.

✅ NPM તરફથી 502 ખરાબ ગેટવે એ એક સાઇનપોસ્ટ છે, નિષ્ફળતા નથી: તેનો અર્થ એ છે કે બહારની દુનિયા NPM પર સંપૂર્ણ રીતે પહોંચી ગઈ છે અને માત્ર છેલ્લું આંતરિક હોપ - હોસ્ટનામ અથવા પોર્ટ - ખોટું છે. તે ફીલ્ડને ઠીક કરો, સમગ્ર સેટઅપને નહીં. વધુ એક ટ્રેપ: જો સેવા બીજા ડોકર કન્ટેનરમાં ચાલે છે, તો localhost ખોટું છે (NPM ના કન્ટેનરની અંદર, લોકલહોસ્ટ એટલે NPM પોતે) - પ્રકાશિત પોર્ટ સાથે સર્વરના LAN IP નો ઉપયોગ કરો, અથવા બંને કન્ટેનરને સમાન ડોકર નેટવર્ક પર મૂકો અને કન્ટેનર નામનો ઉપયોગ કરો.
7

ફ્રી લેટ્સ એન્ક્રિપ્ટ HTTPS પ્રમાણપત્ર મેળવો

પગલું 6 માંથી સાદા હોસ્ટ પહેલાથી જ કામ કરે તે પછી જ આ કરો - તૂટેલા હોસ્ટ પર HTTPS તમને પ્રમાણપત્ર સાથે તૂટેલા હોસ્ટ આપે છે, અને ખામી શોધવા માટે બમણી જગ્યાઓ. સમાન પ્રોક્સી હોસ્ટ ખોલો, SSL ટૅબ પર જાઓ, SSL પ્રમાણપત્ર ને નવા SSL પ્રમાણપત્રની વિનંતી કરવા માટે સેટ કરો, SSL ફરજિયાત કરો અને HTTP/2 સમર્થન સક્ષમ કરો, ચાલો એન્ક્રિપ્ટ કરો અને સેવાની શરતો સાથે સંમત થાઓ. સાઇટને ફરીથી લોડ કરો - બ્રાઉઝરને હવે https પર પેડલોક બતાવવો જોઈએ.

તે કેવી રીતે કાર્ય કરે છે: ચાલો એન્ક્રિપ્ટ સાબિત કરે છે કે તમે તમારા સર્વરને, પોર્ટ 80 પરના સાર્વજનિક ઇન્ટરનેટ પર, વન-ટાઇમ ટોકન (HTTP-01 ચેલેન્જ) બતાવવા માટે કહીને નામ નિયંત્રિત કરો છો. એટલા માટે DNS તમારી તરફ પોઈન્ટ કરે છે અને પહોંચી શકાય તેવા પોર્ટ 80 બિન-વાટાઘાટપાત્ર છે - એકમાં નિષ્ફળ જાય છે અને વિનંતી નિષ્ફળ જાય છે, અને ભૂલ સેટઅપમાં છે, ક્યારેય લેટ્સ એન્ક્રિપ્ટમાં નહીં. SSL દબાણ કરો દરેક http મુલાકાતીને https પર આપમેળે રીડાયરેક્ટ કરે છે; તેના વિના એનક્રિપ્ટેડ દરવાજો એનક્રિપ્ટેડની બાજુમાં ખુલ્લો રહે છે.

📌 પ્રમાણપત્રો 90 દિવસ માટે જીવંત રહે છે અને NPM તે જ પોર્ટ-80 પ્રૂફનો ઉપયોગ કરીને, સામાન્ય રીતે સમાપ્તિના લગભગ એક મહિના પહેલા, આપમેળે રિન્યૂ કરે છે. જો નવીકરણ ક્યારેય નિષ્ફળ જાય, તો પહેલા કંટાળાજનક કારણો તપાસો: DNS બદલાઈ ગયું હતું, રાઉટર ફોરવર્ડિંગ દૂર કરવામાં આવ્યું હતું અથવા પોર્ટ 80 અવરોધિત થઈ ગયું હતું. એકવાર સેવા સેટલ થઈ જાય અને નવીકરણ સાબિત થઈ જાય પછી જ HSTS સક્ષમ કરો - તે એક મજબૂત વચન છે જે બ્રાઉઝર મહિનાઓ સુધી યાદ રાખે છે.

🏷️વિષય શોધ ચલો અને કીવર્ડ્સ

🔍 Nginx Proxy Manager 🔍 Reverse Proxy 🔍 Docker Compose 🔍 Lets Encrypt 🔍 Free HTTPS 🔍 Proxy Host 🔍 TechnicalAnshu 🔍 Self Hosting 🔍 Subdomain Setup 🔍 Port 80 443 81 🔍 Force SSL 🔍 Home Server
🎙️ સંપૂર્ણ ટ્રાન્સક્રિપ્ટ — વિસ્તૃત કરવા માટે ટૅપ કરો

__TOK_34__

__TOK_35__

__TOK_36__

❓ વારંવાર પૂછાતા પ્રશ્નો

શું આ ટ્યુટોરીયલ અનુસરવા માટે 100% મફત છે?

__TOK_37__

શું નવા નિશાળીયા આ માર્ગદર્શિકાને અનુસરી શકે છે?

__TOK_38__

જો હું અટકી જાઉં તો હું ક્યાં પ્રશ્નો પૂછી શકું?

__TOK_39__

🚀 YouTube પર સંપૂર્ણ ટ્યુટોરીયલ જુઓ

__TOK_40__

__TOK_41__

▶️ સંપૂર્ણ વિડિઓ જુઓ
આ ટ્યુટોરીયલ ટેકનિકલ અંશુના Nginx પ્રોક્સી મેનેજર ઈન્સ્ટોલ વિડિયો પર આધારિત છે • કોઈ સ્ટેપ પર અટકી ગયા છો? વિડિયો કોમેન્ટમાં પૂછો — તમને ત્યાં મદદ મળશે 🙏