DEV Community

Er. Bhupendra
Er. Bhupendra

Posted on

devops 1

DevOps me “pipeline” ka matlab hota hai automation steps jo code ko developer se production tak le jaate hain.
Docker, Jenkins aur Kubernetes sab ke alag roles hote hain — isliye unke pipelines bhi alag stages me kaam karte hain.

Main simple 3 pipelines (Jenkins, Docker, Kubernetes) production flow me samjha raha hoon.


1️⃣ Jenkins Pipeline (CI Pipeline)

Image

Image

Image

Image

Purpose: Code ko build aur test karna (CI – Continuous Integration).

Typical Jenkins pipeline stages:

Code → Build → Test → Package → Docker Build → Push → Deploy
Enter fullscreen mode Exit fullscreen mode

Example Jenkinsfile pipeline:

pipeline {
  agent any

  stages {
    stage('Code Checkout') {
      steps {
        git 'https://github.com/app/project.git'
      }
    }

    stage('Build') {
      steps {
        sh 'npm install'
      }
    }

    stage('Test') {
      steps {
        sh 'npm test'
      }
    }

    stage('Docker Build') {
      steps {
        sh 'docker build -t myapp:v1 .'
      }
    }

    stage('Push Image') {
      steps {
        sh 'docker push myrepo/myapp:v1'
      }
    }

    stage('Deploy') {
      steps {
        sh 'kubectl apply -f deployment.yaml'
      }
    }
  }
}
Enter fullscreen mode Exit fullscreen mode

👉 Jenkins automation engine hai jo pipeline run karta hai.


2️⃣ Docker Pipeline

Image

Image

Image

Image

Purpose: Application ko container image me convert karna.

Typical Docker pipeline:

Source Code
↓
Dockerfile
↓
Docker Build
↓
Docker Image
↓
Push to Registry
Enter fullscreen mode Exit fullscreen mode

Example steps:

1️⃣ Dockerfile

FROM node:18
WORKDIR /app
COPY . .
RUN npm install
CMD ["node","app.js"]
Enter fullscreen mode Exit fullscreen mode

2️⃣ Image build

docker build -t myapp:v1 .
Enter fullscreen mode Exit fullscreen mode

3️⃣ Push to registry

docker push myrepo/myapp:v1
Enter fullscreen mode Exit fullscreen mode

Registry examples:

  • Docker Hub
  • AWS ECR

👉 Docker pipeline ka output hota hai container image.


3️⃣ Kubernetes Pipeline (Deployment Pipeline)

Image

Image

Image

Image

Purpose: Docker containers ko production me run aur manage karna.

Typical Kubernetes pipeline:

Docker Image
↓
Deployment YAML
↓
Kubernetes Cluster
↓
Pods
↓
Service
↓
Load Balancer
↓
Users
Enter fullscreen mode Exit fullscreen mode

Example deployment:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: myapp
spec:
  replicas: 3
  template:
    spec:
      containers:
      - name: myapp
        image: myrepo/myapp:v1
Enter fullscreen mode Exit fullscreen mode

Deploy command:

kubectl apply -f deployment.yaml
Enter fullscreen mode Exit fullscreen mode

Kubernetes automatically:

  • containers run karega
  • scaling karega
  • crash hone par restart karega
  • rolling update karega

4️⃣ Full Production Pipeline (Real DevOps Flow)

Developer
↓
GitHub
↓
Jenkins Pipeline
↓
Build + Test
↓
Docker Pipeline
↓
Docker Image
↓
Registry
↓
Kubernetes Pipeline
↓
Pods
↓
Load Balancer
↓
Users
Enter fullscreen mode Exit fullscreen mode

5️⃣ Role Comparison

Tool Role
Jenkins CI/CD automation
Docker Application containerization
Kubernetes Container orchestration

Simple analogy

  • Jenkins → manager
  • Docker → packaging machine
  • Kubernetes → factory workers

Manager pipeline run karta hai, packaging machine product banata hai, workers product run karte hain.

=============

Top comments (0)