📜
Images

Dockerfile Basics

Image ka Blueprint
💡 Dockerfile, EK, RECIPE, CARD, jaisi, hai — ISME, STEP-BY-STEP, INSTRUCTIONS, LIKHI, hoti, HAIN, ki, IMAGE, kaise, BANANI, hai, EXACTLY, JAISE, EK, RECIPE, mein, STEP-BY-STEP, batata, hai, ki, DISH, kaise, banani, hai.

Dockerfile, EK, PLAIN, TEXT, FILE, hai, JISME, INSTRUCTIONS, ki, EK, SERIES, hoti, hai — HAR, LINE, EK, COMMAND, se, SHURU, hoti, hai, jaise, FROM, RUN, COPY, CMD, waghera.

SABSE, PEHLI, INSTRUCTION, HAMESHA, FROM, hoti, hai — YE, BASE, IMAGE, DEFINE, karti, hai, JISKE, UPAR, TUMHARI, IMAGE, BANEGI, (jaise, node, python, ya, ubuntu, jaisi, BASE, IMAGES).

# Sabse simple Dockerfile
FROM node:20-alpine
WORKDIR /app
COPY . .
RUN npm install
CMD ["node", "index.js"]
📜
Dockerfile, EK, RECIPE, CARD, jaisi, hai — ISME, STEP-BY-STEP, INSTRUCTIONS, LIKHI, hoti, HAIN, ki, IMAGE, kaise, BANANI, hai, EXACTLY, JAISE, EK, RECIPE, mein, STEP-BY-STEP, batata, hai, ki, DISH, kaise, banani, hai.
1 / 2
⚡ झट से Recap
  • Dockerfile = plain text instructions jo image build karti hain
  • FROM instruction hamesha sabse pehli line hoti hai (base image)
  • Har instruction (FROM, RUN, COPY, CMD) ek naya step add karti hai
इस page में (2 subtopics)

"alpine" VARIANTS, (jaise, node:20-alpine) MUCH, SMALLER, HOTE, HAIN, (5-10MB, vs, 900MB+) kyunki, YE, minimal, Alpine, Linux, PAR, based, HAIN — LEKIN, KUCH, NATIVE, packages, Alpine, ke, "musl" libc, ke, saath, COMPATIBILITY, ISSUES, DE, sakte, HAIN.

💡Tip: Agar, "alpine" images, mein, koi, native, dependency, FAIL, ho, RAHI, hai, TO, "slim" VARIANT, (jaise, node:20-slim, Debian-based) try, karo — YE, alpine, se, THODA, BADA, hai, LEKIN, COMPATIBILITY, BEHTAR, hoti, hai.

Dockerfile, mein, "#" se, SHURU, hone, waali, LINES, COMMENTS, hoti, HAIN. READABILITY, ke, liye, HAR, MAJOR, section, ko, COMMENT, se, LABEL, karna, aur, INSTRUCTIONS, ko, LOGICAL, ORDER, (dependencies, phir, code, phir, config) mein, RAKHNA, GOOD, PRACTICE, maana, jaata hai.

# Base image
FROM node:20-alpine
# Dependencies install karo (rarely changes)
COPY package*.json ./
RUN npm ci
# App code copy karo (frequently changes)
COPY . .