Nginx પ્રોક્સી મેનેજર ઇન્સ્ટોલ - 2-મિનિટ સેટઅપ માર્ગદર્શિકા
તમારી સેવાઓ હાલમાં 192.168.1.50:8080 જેવા નીચ સરનામાં પર રહે છે. Nginx પ્રોક્સી મેનેજર તેમને મફત HTTPS સાથે app.yourdomain.com જેવા સ્વચ્છ નામોમાં ફેરવે છે - એક ડોકર કમ્પોઝ ફાઇલ સાથે ઇન્સ્ટોલ કરેલું છે અને હાથથી લખેલી રૂપરેખા ફાઇલોને બદલે એક સરળ વેબ પેનલથી સંચાલિત થાય છે.
📑પ્રકરણો
- રિવર્સ પ્રોક્સી શું કરે છે - તમારી બધી સેવાઓ માટે એક દરવાજો
- શરૂ કરતા પહેલા તમારે શું જોઈએ છે - ડોકર, એક ડોમેન અને પહોંચી શકાય તેવા પોર્ટ્સ
- કંઈપણ ઇન્સ્ટોલ કરતા પહેલા તમારા ડોમેન DNS ને સર્વર પર નિર્દેશિત કરો
- ફોલ્ડર અને docker-compose.yml ફાઇલ બનાવો
- એક આદેશ સાથે Nginx પ્રોક્સી મેનેજર શરૂ કરો
- પ્રથમ લૉગિન - એડમિન એકાઉન્ટ પગલું દરેકને ખોટું થાય છે
- તમારું પ્રથમ પ્રોક્સી હોસ્ટ બનાવો, ફીલ્ડ બાય ફીલ્ડ
- મફત Lets Encrypt HTTPS પ્રમાણપત્ર મેળવો અને ફોર્સ SSL ચાલુ કરો
📋 વિહંગાવલોકન અને પગલું-દર-પગલાની માર્ગદર્શિકા
શરૂ કરતા પહેલા તમારે શું જોઈએ છે
Nginx પ્રોક્સી મેનેજર (NPM) કામ કરી શકે તે પહેલાં ત્રણ વસ્તુઓ અસ્તિત્વમાં હોવી જોઈએ. પ્રથમ, ડોકર અને ડોકર કમ્પોઝ સાથેનું Linux સર્વર અથવા પીસી પહેલેથી જ ઇન્સ્ટોલ કરેલું અને કાર્ય કરે છે - NPM એક કન્ટેનર તરીકે ચાલે છે, સામાન્ય પ્રોગ્રામ તરીકે નહીં. બીજું, એક ડોમેન નામ જેનું DNS તમે સંપાદિત કરી શકો છો, કારણ કે દરેક સેવાને તેનું પોતાનું સબડોમેન મળે છે. ત્રીજું, તમારું રાઉટર અથવા ક્લાઉડ ફાયરવોલ આ મશીન પર પોર્ટ 80 અને 443 ફોરવર્ડ કરવામાં સક્ષમ હોવું જોઈએ.
તમારા ડોમેન DNS ને પહેલા સર્વર તરફ નિર્દેશ કરો
NPM ટ્રાફિકને નામ દ્વારા રૂટ કરે છે, અને Encrypt ફક્ત એવા નામો માટે પ્રમાણપત્રો જારી કરે છે જે તમારા મશીન પર સંભવિતપણે નિર્દેશ કરે છે - તેથી તમે તેના પર કંઈપણ બનાવતા પહેલા નામને ઉકેલવું પડશે. તમારા રજિસ્ટ્રાર અથવા DNS હોસ્ટ પર, એક રેકોર્ડ ઉમેરો: નામ એ માત્ર સબડોમેન શબ્દ છે (ઉદાહરણ તરીકે app) અને મૂલ્ય એ તમારા સર્વરનું સાર્વજનિક IP સરનામું છે. દરેક સેવાને તેનો પોતાનો રેકોર્ડ મળે છે, અને તે બધા એક જ IP પર નિર્દેશ કરી શકે છે - NPM સેવાઓને પછીથી, નામ દ્વારા અલગ કરે છે. પરીક્ષણ કરતી વખતે 300 સેકન્ડ જેવા ટૂંકા TTL સેટ કરો, જેથી ભૂલો કલાકોને બદલે મિનિટોમાં ઓછી થઈ જાય.
તમે ચાલુ રાખો તે પહેલાં તેને સાબિત કરો: તપાસો કે નામ બહારના નેટવર્કથી તમારા સાર્વજનિક IP પર રિઝોલ્યુશન કરે છે (ઉદાહરણ તરીકે તમારા ફોનમાંથી Wi-Fi બંધ છે). તૂટેલા DNS કચરો સામે પ્રમાણપત્રની વિનંતી કરવાથી એન્ક્રિપ્ટના પ્રયાસો થવા દે છે અને વારંવાર નિષ્ફળતા તમને કલાકો માટે રેટ-મર્યાદિત કરી શકે છે. ઓર્ડર મહત્વપૂર્ણ છે: DNS પ્રથમ, પ્રોક્સી હોસ્ટ બીજું, પ્રમાણપત્ર ત્રીજું.
ફોલ્ડર અને કંપોઝ ફાઇલ બનાવો
સર્વર પર NPM માટે ફોલ્ડર બનાવો અને તેની અંદર નીચેની ફાઇલને docker-compose.yml તરીકે સાચવો. આ એક ફાઇલ સંપૂર્ણ ઇન્સ્ટોલેશન છે. છબીનું નામ સત્તાવાર સમુદાયની છબી છે. પોર્ટ્સ 80 અને 443 એ સાર્વજનિક દરવાજા છે, પોર્ટ 81 એ એડમિન પેનલ છે, અને બે વોલ્યુમો એ છે જ્યાં તમારું સંપૂર્ણ સેટઅપ રહે છે: ./data તમારા બધા પ્રોક્સી હોસ્ટ્સ સાથે ડેટાબેઝ ધરાવે છે, અને ./letsencrypt તમારા પ્રમાણપત્રો ધરાવે છે. તે બે ફોલ્ડર્સ ગુમાવો અને તમે આખું સેટઅપ ગુમાવશો - એકવાર વસ્તુઓ ચાલુ થઈ જાય તે પછી તેનો બેકઅપ લો.
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 ને આપમેળે પાછું લાવે છે.
Nginx પ્રોક્સી મેનેજર શરૂ કરો
તે ફોલ્ડરની અંદરથી, સ્ટાર્ટ કમાન્ડ ચલાવો. ડોકર ઇમેજ ડાઉનલોડ કરે છે અને બેકગ્રાઉન્ડમાં કન્ટેનર શરૂ કરે છે.
docker compose up -d
તપાસો કે તે ચાલી રહ્યું છે:
docker ps
તમારે પોર્ટ 80, 443 અને 81 સાથે સૂચિબદ્ધ કન્ટેનર જોવું જોઈએ. ડેટાબેઝ બનાવવામાં આવે ત્યારે નાના સર્વર પર પ્રથમ પ્રારંભમાં એક કે બે મિનિટ લાગે છે. જો કન્ટેનર પુનઃપ્રારંભ કરવાનું ચાલુ રાખે છે, તો લોગ સાદી ભાષામાં કારણ બતાવે છે:
docker compose logs
દસમાંથી નવ વખત પુનઃપ્રારંભ લૂપ એ એક પોર્ટ છે જે પહેલાથી જ હોસ્ટ પર અન્ય કોઈ વસ્તુ દ્વારા ઉપયોગમાં લેવાય છે - સામાન્ય રીતે જૂનું વેબ સર્વર હજી પણ ચાલી રહ્યું છે.
પ્રથમ લોગિન - તરત જ એડમિન એકાઉન્ટને સુરક્ષિત કરો
તમારા પોતાના નેટવર્ક પર બ્રાઉઝરમાં એડમિન પેનલ ખોલો:
http://your-server-ip:81
આ પ્રથમ મિનિટમાં કરો. બિલ્ડ પર આધાર રાખીને, NPM કાં તો તમને તમારા પોતાના ઈમેલ અને મજબૂત પાસવર્ડ સાથે જાણીતા ફર્સ્ટ-લૉગિન એડમિનિસ્ટ્રેટર વિગતો બદલવાનું કહે છે અથવા - કોઈ ડિફોલ્ટ એકાઉન્ટ વગરના નવા બિલ્ડ્સ પર - એડમિન પેજ ખોલનાર પ્રથમ વ્યક્તિ એડમિનિસ્ટ્રેટર બનાવે છે. કોઈપણ રીતે નિયમ સમાન છે: કન્ટેનર શરૂ થાય તે ક્ષણે તમારું પોતાનું એડમિન એકાઉન્ટ સેટ કરો, બીજું કંઈપણ બનાવતા પહેલા, અને વાસ્તવિક મેઈલબોક્સનો ઉપયોગ કરો - NPM ઇમેઇલ્સ કે જે પ્રમાણપત્રની સમસ્યાઓને સંબોધિત કરે છે.
તમારું પ્રથમ પ્રોક્સી હોસ્ટ બનાવો
NPM માં હોસ્ટ્સ → પ્રોક્સી હોસ્ટ્સ → પ્રોક્સી હોસ્ટ ઉમેરો ખોલો અને એક વાક્ય તરીકે ફોર્મ ભરો - "આ નામ તે આંતરિક સેવામાં જાય છે":
ડોમેન નામો: app.yourdomain.com - પગલું 2 નું ચોક્કસ સાર્વજનિક નામ, જે તમારા સર્વર પર પહેલાથી જ ઉકેલાયેલ હોવું જોઈએ.
યોજના: http મોટાભાગની હોમ અને ઑફિસ ઍપ માટે. યોજના NPM અને આંતરિક સેવા વચ્ચેના જોડાણનું વર્ણન કરે છે, મુલાકાતીઓ શું ઉપયોગ કરે છે તે નહીં - NPM દરવાજા પર જાહેર એન્ક્રિપ્શનનું સંચાલન કરે છે. જ્યારે આંતરિક એપ્લિકેશન પોતે HTTPS સેવા આપે ત્યારે જ અહીં https પસંદ કરો.
ફોરવર્ડ હોસ્ટનામ / IP: સેવાનું આંતરિક સરનામું, ઉદાહરણ તરીકે 192.168.1.50.
ફોરવર્ડ પોર્ટ: જે પોર્ટ પર સેવા ખરેખર સાંભળે છે, ઉદાહરણ તરીકે 8080 - 80 અથવા 443 નહીં; તે NPM ના દરવાજા છે, સેવાના નથી.
સામાન્ય શોષણને અવરોધિત કરો ચાલુ કરો, પછી સાચવો. બ્રાઉઝરમાં નામ ખોલીને તરત જ પરીક્ષણ કરો - આદર્શ રીતે તમારા ફોનમાંથી Wi-Fi બંધ હોય, જેથી તમે વાસ્તવિક સાર્વજનિક પાથનું પરીક્ષણ કરો.
localhost ખોટું છે (NPM ના કન્ટેનરની અંદર, લોકલહોસ્ટ એટલે NPM પોતે) - પ્રકાશિત પોર્ટ સાથે સર્વરના LAN IP નો ઉપયોગ કરો, અથવા બંને કન્ટેનરને સમાન ડોકર નેટવર્ક પર મૂકો અને કન્ટેનર નામનો ઉપયોગ કરો.ફ્રી લેટ્સ એન્ક્રિપ્ટ HTTPS પ્રમાણપત્ર મેળવો
પગલું 6 માંથી સાદા હોસ્ટ પહેલાથી જ કામ કરે તે પછી જ આ કરો - તૂટેલા હોસ્ટ પર HTTPS તમને પ્રમાણપત્ર સાથે તૂટેલા હોસ્ટ આપે છે, અને ખામી શોધવા માટે બમણી જગ્યાઓ. સમાન પ્રોક્સી હોસ્ટ ખોલો, SSL ટૅબ પર જાઓ, SSL પ્રમાણપત્ર ને નવા SSL પ્રમાણપત્રની વિનંતી કરવા માટે સેટ કરો, SSL ફરજિયાત કરો અને HTTP/2 સમર્થન સક્ષમ કરો, ચાલો એન્ક્રિપ્ટ કરો અને સેવાની શરતો સાથે સંમત થાઓ. સાઇટને ફરીથી લોડ કરો - બ્રાઉઝરને હવે https પર પેડલોક બતાવવો જોઈએ.
તે કેવી રીતે કાર્ય કરે છે: ચાલો એન્ક્રિપ્ટ સાબિત કરે છે કે તમે તમારા સર્વરને, પોર્ટ 80 પરના સાર્વજનિક ઇન્ટરનેટ પર, વન-ટાઇમ ટોકન (HTTP-01 ચેલેન્જ) બતાવવા માટે કહીને નામ નિયંત્રિત કરો છો. એટલા માટે DNS તમારી તરફ પોઈન્ટ કરે છે અને પહોંચી શકાય તેવા પોર્ટ 80 બિન-વાટાઘાટપાત્ર છે - એકમાં નિષ્ફળ જાય છે અને વિનંતી નિષ્ફળ જાય છે, અને ભૂલ સેટઅપમાં છે, ક્યારેય લેટ્સ એન્ક્રિપ્ટમાં નહીં. SSL દબાણ કરો દરેક http મુલાકાતીને https પર આપમેળે રીડાયરેક્ટ કરે છે; તેના વિના એનક્રિપ્ટેડ દરવાજો એનક્રિપ્ટેડની બાજુમાં ખુલ્લો રહે છે.
🏷️વિષય શોધ ચલો અને કીવર્ડ્સ
🎙️ સંપૂર્ણ ટ્રાન્સક્રિપ્ટ — વિસ્તૃત કરવા માટે ટૅપ કરો
__TOK_34__
__TOK_35__
__TOK_36__
❓ વારંવાર પૂછાતા પ્રશ્નો
શું આ ટ્યુટોરીયલ અનુસરવા માટે 100% મફત છે?
__TOK_37__
શું નવા નિશાળીયા આ માર્ગદર્શિકાને અનુસરી શકે છે?
__TOK_38__
જો હું અટકી જાઉં તો હું ક્યાં પ્રશ્નો પૂછી શકું?
__TOK_39__