Next.js ऐप बनाना एक बात है; इसे उत्पादन में विश्वसनीय रूप से तैनात करना दूसरी बात है। यह मार्गदर्शिका मुख्य परिनियोजन पथों को कवर करती है – वर्सेल (सबसे आसान) और डॉकर के साथ स्व-होस्टिंग (सबसे अधिक नियंत्रण) – साथ ही कॉन्फ़िगरेशन और अनुकूलन जो 2026 में नेक्स्ट.जेएस ऐप के उत्पादन के लिए मायने रखता है।
📋 Table of Contents
- परिनियोजन विकल्प अवलोकन
- वर्सेल (नेक्स्ट.जेएस के रचनाकारों द्वारा निर्मित) बिल्ड, एज कैशिंग, सर्वर रहित फ़ंक्शन और छवि अनुकूलन को स्वचालित रूप से संभालता है। डैशबोर्ड में पर्यावरण चर सेट करें। यह शून्य बुनियादी ढांचे प्रबंधन के साथ नेक्स्ट.जेएस ऐप के उत्पादन का सबसे तेज़ रास्ता है।
- बड़े पैमाने पर पूर्ण नियंत्रण और अनुमानित लागत के लिए, डॉकर के साथ स्वयं-होस्ट करें। Next.js का स्टैंडअलोन आउटपुट इसे कुशल बनाता है:
- उत्पादन में पर्यावरण चर
- कैशिंग और पुनर्वैधीकरण
- उत्पादन चेकलिस्ट
- स्टैंडअलोन आउटपुट सक्षम करें
- प्रश्न: वर्सेल या सेल्फ-होस्टिंग?
- 2026 में नेक्स्ट.जेएस को उत्पादन में तैनात करने के दो मुख्य रास्ते हैं:
परिनियोजन विकल्प अवलोकन
| विधि | के लिए सर्वश्रेष्ठ प्रयास | वर्सेल |
|---|---|---|
| सबसे तेज़ तैनाती, शून्य कॉन्फ़िगरेशन, बढ़त | न्यूनतम | डॉकर सेल्फ-होस्ट |
| पूर्ण नियंत्रण, बड़े पैमाने पर लागत | मध्यम | नोड सर्वर |
| सरल वीपीएस होस्टिंग | निम्न-मध्यम | स्थैतिक निर्यात |
| पूरी तरह से स्थिर साइटें | निम्न | विधि 1: वर्सेल (सबसे आसान) |
वर्सेल (नेक्स्ट.जेएस के रचनाकारों द्वारा निर्मित) बिल्ड, एज कैशिंग, सर्वर रहित फ़ंक्शन और छवि अनुकूलन को स्वचालित रूप से संभालता है। डैशबोर्ड में पर्यावरण चर सेट करें। यह शून्य बुनियादी ढांचे प्रबंधन के साथ नेक्स्ट.जेएस ऐप के उत्पादन का सबसे तेज़ रास्ता है।
# Install Vercel CLI
npm install -g vercel
# Deploy from your project directory
vercel # preview deployment
vercel --prod # production deployment
# Or connect your Git repo in the Vercel dashboard for
# automatic deployments on every push
विधि 2: डॉकर स्व-होस्टिंग
बड़े पैमाने पर पूर्ण नियंत्रण और अनुमानित लागत के लिए, डॉकर के साथ स्वयं-होस्ट करें। Next.js का स्टैंडअलोन आउटपुट इसे कुशल बनाता है:
सेल्फ-होस्टिंग के लिए Nginx रिवर्स प्रॉक्सी
// next.config.js — enable standalone output
module.exports = {
output: 'standalone', // bundles only needed files for a small image
};
# Dockerfile — multi-stage for a small production image
FROM node:20-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build
FROM node:20-alpine AS runner
WORKDIR /app
ENV NODE_ENV=production
# Copy standalone output (much smaller than full node_modules)
COPY --from=builder /app/.next/standalone ./
COPY --from=builder /app/.next/static ./.next/static
COPY --from=builder /app/public ./public
EXPOSE 3000
CMD ["node", "server.js"]
# Build and run
docker build -t my-nextjs-app .
docker run -p 3000:3000 --env-file .env.production my-nextjs-app
उत्पादन में पर्यावरण चर
# /etc/nginx/sites-enabled/myapp
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
# Cache Next.js static assets aggressively
location /_next/static {
proxy_pass http://localhost:3000;
add_header Cache-Control "public, max-age=31536000, immutable";
}
}
कैशिंग और पुनर्वैधीकरण
# Server-only secrets (never exposed to browser)
DATABASE_URL=postgresql://...
API_SECRET=...
# Client-exposed vars need NEXT_PUBLIC_ prefix (these are PUBLIC)
NEXT_PUBLIC_API_URL=https://api.example.com
# Set these in Vercel dashboard, or pass via --env-file to Docker
# NEVER commit production secrets
उत्पादन चेकलिस्ट
// Incremental Static Regeneration — cache pages, revalidate periodically
export const revalidate = 3600; // regenerate at most once per hour
// Or on-demand revalidation via API
import { revalidatePath } from 'next/cache';
export async function POST(request) {
// After content changes, revalidate the affected page
revalidatePath('/blog');
return Response.json({ revalidated: true });
}
// Fetch caching
const data = await fetch('https://api.example.com/data', {
next: { revalidate: 60 }, // cache this fetch for 60 seconds
});
स्टैंडअलोन आउटपुट सक्षम करें
- छोटी डॉकर छवियों के लिएसभी पर्यावरण चर सेट करें
- आपके प्लेटफ़ॉर्म में (प्रतिबद्ध नहीं)कैशिंग कॉन्फ़िगर करें
- – पेजों के लिए आईएसआर, स्थिर परिसंपत्तियों के लिए कैश हेडरछवियों को अनुकूलित करें
- – नेक्स्ट/इमेज का उपयोग करें (वर्सेल पर स्वचालित; सेल्फ-होस्टिंग होने पर लोडर को कॉन्फ़िगर करें)त्रुटि निगरानी जोड़ें
- – उत्पादन त्रुटियों के लिए संतरी या समानHTTPS सेट करें
- – वर्सेल पर स्वचालित; आइए सेल्फ-होस्टिंग के लिए एन्क्रिप्ट करेंसंपीड़न सक्षम करें
- – प्रॉक्सी स्तर पर gzip/brotliअक्सर पूछे जाने वाले प्रश्न
प्रश्न: वर्सेल या सेल्फ-होस्टिंग?
उत्तर: सबसे तेज़ तैनाती और शून्य बुनियादी ढांचा प्रबंधन के लिए वर्सेल (अधिकांश ऐप्स के लिए बढ़िया)। पूर्ण नियंत्रण, बड़े पैमाने पर अनुमानित लागत, या विशिष्ट बुनियादी ढांचे की आवश्यकताओं के लिए डॉकर के साथ स्व-होस्टिंग। वर्सेल से प्रारंभ करें; यदि लागत या नियंत्रण इसकी मांग करता है तो स्व-होस्टिंग की ओर बढ़ें।
प्रश्न: क्या स्व-होस्टेड Next.js सभी सुविधाओं का समर्थन करता है?
उत्तर: अधिकांश, हाँ – एसएसआर, आईएसआर, एपीआई मार्ग, और छवि अनुकूलन सभी स्व-होस्ट पर काम करते हैं (छवि अनुकूलन के लिए एक कॉन्फ़िगर लोडर की आवश्यकता होती है)। कुछ वर्सेल-विशिष्ट एज सुविधाएँ भिन्न हैं, लेकिन कोर नेक्स्ट.जेएस स्व-होस्ट होने पर पूरी तरह से काम करता है।
प्रश्न: मेरा स्व-होस्ट किया गया छवि अनुकूलन काम क्यों नहीं कर रहा है?
उ: अगला/छवि अनुकूलन वर्सेल पर स्वचालित है, लेकिन स्वयं-होस्टेड होने पर कॉन्फ़िगरेशन की आवश्यकता होती है – या तो अंतर्निहित ऑप्टिमाइज़र का उपयोग करें (तीव्र की आवश्यकता है) या बाहरी छवि लोडर/सीडीएन को कॉन्फ़िगर करें। Next.config.js छवि सेटिंग्स की जाँच करें।
प्रश्न: मैं उन पर्यावरण चरों को कैसे संभाल सकता हूँ जो हर वातावरण में भिन्न होते हैं?
उ: उन्हें अपने होस्टिंग प्लेटफ़ॉर्म (वर्सेल डैशबोर्ड, डॉकर –env-फ़ाइल, या अपने ऑर्केस्ट्रेटर) में सेट करें। ब्राउज़र में प्रदर्शित होने के लिए सुरक्षित मानों के लिए केवल NEXT_PUBLIC_ उपसर्ग का उपयोग करें। रहस्य सर्वर-साइड रखें।
प्रश्न: मैं कोल्ड स्टार्ट को कैसे कम करूँ?
उ: वर्सेल पर, सर्वर रहित फ़ंक्शंस की शुरुआत कुछ ठंडी होती है; उन्हें दुबला रखें. लंबे समय तक चलने वाले नोड सर्वर के साथ स्व-होस्टेड में कोई कोल्ड स्टार्ट नहीं होता है। आईएसआर/स्थैतिक पृष्ठों के लिए, अधिकांश अनुरोध बिना किसी परवाह किए तुरंत कैश से परोसे जाते हैं।
निष्कर्ष
2026 में नेक्स्ट.जेएस को उत्पादन में तैनात करने के दो मुख्य रास्ते हैं:
सबसे तेज़, शून्य-कॉन्फ़िगरेशन परिनियोजन के लिए वर्सेल स्वचालित अनुकूलन और एज कैशिंग के साथ, यापूर्ण नियंत्रण और अनुमानित लागत के लिए डॉकर स्व-होस्टिंग nginx प्रॉक्सी के पीछे छोटी छवियों के लिए स्टैंडअलोन आउटपुट का उपयोग करना। आप जो भी चुनें, प्लेटफ़ॉर्म में पर्यावरण चर सेट करें (कभी प्रतिबद्ध नहीं), आईएसआर और कैश हेडर के साथ कैशिंग कॉन्फ़िगर करें, छवियों को अनुकूलित करें, और त्रुटि निगरानी जोड़ें। सरलता के लिए वर्सेल से शुरुआत करें, और जब लागत या नियंत्रण आवश्यकताएं अतिरिक्त परिचालन कार्य को उचित ठहराती हैं तो स्व-होस्टिंग की ओर बढ़ें। nginx प्रॉक्सी के पीछे छोटी छवियों के लिए स्टैंडअलोन आउटपुट का उपयोग करना। आप जो भी चुनें, प्लेटफ़ॉर्म में पर्यावरण चर सेट करें (कभी प्रतिबद्ध नहीं), आईएसआर और कैश हेडर के साथ कैशिंग कॉन्फ़िगर करें, छवियों को अनुकूलित करें, और त्रुटि निगरानी जोड़ें। सरलता के लिए वर्सेल से शुरुआत करें, और जब लागत या नियंत्रण आवश्यकताएं अतिरिक्त परिचालन कार्य को उचित ठहराती हैं तो स्व-होस्टिंग की ओर बढ़ें।
🔗 Share this article
✍️ Leave a Comment