🚀
Advanced Node.js

Node.js Deployment

PM2, Docker, CI/CD
💡 Deployment, EK, "MOVE-IN" process, jaisa, hai — CODE, (FURNITURE) DEVELOPMENT, MACHINE, se, PRODUCTION, SERVER, tak, LE, JAANA, aur, WAHA, PROPERLY, "SETUP" karna (RUNNING, MONITORING, RESTARTING, ON, CRASH).

PM2, EK, PROCESS, MANAGER, hai — APP, ko, BACKGROUND, mein, RUN, karta hai, CRASH, hone, PAR, AUTOMATICALLY, RESTART, karta hai, aur, LOGS, MANAGE, karta hai. pm2 start app.js --watch, FILE, CHANGES, PAR, AUTO-RESTART, bhi, kar, sakta hai.

Docker, APP, ko, EK, CONTAINER, mein, PACKAGE, karta hai, apni, SAARI, DEPENDENCIES, ke, saath — "IT, WORKS, ON, MY, MACHINE" PROBLEM, SOLVE, karta hai, kyunki, CONTAINER, HAR, ENVIRONMENT, mein, SAME, TAREEKE, SE, RUN, hota hai.

// Dockerfile:
// FROM node:20-alpine
// WORKDIR /app
// COPY package*.json ./
// RUN npm ci --production
// COPY . .
// EXPOSE 3000
// CMD ["node", "server.js"]

// PM2 (ecosystem.config.js):
module.exports = {
  apps: [{
    name: "my-app",
    script: "server.js",
    instances: "max",   // CPU cores, ke, hisaab, se
    exec_mode: "cluster",
  }],
};
🚀
Deployment, EK, "MOVE-IN" process, jaisa, hai — CODE, (FURNITURE) DEVELOPMENT, MACHINE, se, PRODUCTION, SERVER, tak, LE, JAANA, aur, WAHA, PROPERLY, "SETUP" karna (RUNNING, MONITORING, RESTARTING, ON, CRASH).
1 / 2
⚡ Quick Recap
  • PM2 = process manager — auto-restart, cluster mode, logs
  • Docker = app, ko, dependencies, ke, saath, container, mein, PACKAGE, karta hai
  • npm ci, CI/CD, mein, PREFERRED — exact, lockfile, versions, INSTALL, karta hai
On this page (2 subtopics)

/health, EK, SIMPLE, ENDPOINT, hai, JO, LOAD, BALANCERS, aur, ORCHESTRATION, TOOLS, (Kubernetes) USE, karte, HAIN, YE, VERIFY, karne, ke, liye, ki, APP, RUNNING, hai, aur, TRAFFIC, HANDLE, karne, ke, liye, READY, hai.

app.get("/health", (req, res) => {
  res.status(200).json({ status: "ok", uptime: process.uptime() });
});

SIGTERM, SIGNAL, RECEIVE, hone, PAR, (jaise, Kubernetes, POD, TERMINATE, karte, waqt, BHEJTA, hai) SERVER, ko, NAYE, CONNECTIONS, ACCEPT, karna, BAND, karna, CHAHIYE, aur, EXISTING, REQUESTS, ko, COMPLETE, hone, ka, TIME, DENA, CHAHIYE, PEHLE, EXIT, karne, se.

process.on("SIGTERM", () => {
  server.close(() => {
    console.log("Server closed gracefully");
    process.exit(0);
  });
});