CODEBOOK
Website Platform Belajar Dan Edukasi
By Shadownex 2025-2026
Materi/Docker & Containerization Intro
DevOps

Docker & Containerization Intro

Pahami teknologi container, membuat Dockerfile, menjalankan container, dan mengorkestrasi service dengan Docker Compose.

Status Membaca:Belum Dibaca

Daftar Bab (1)

Bab 1 dari 1

Konsep Container vs VM & Dockerfile

Docker & Containerization

Docker memungkinkan aplikasi dibungkus bersama dengan seluruh dependensinya ke dalam satu Container yang terisolasi dan dapat dijalankan di mana saja secara konsisten.

Mengapa Docker?

  • Solusi "It works on my machine" — Aplikasi berjalan persis sama di laptop developer dan di server produksi.
  • Ringan & Cepat — Container berbagi kernel OS host, jauh lebih hemat RAM dan CPU dibandingkan Virtual Machine (VM).
  • Komponen Utama Docker

    1. Dockerfile — Resep/instruksi untuk membuat Docker Image.

    2. Docker Image — Template/snapshot aplikasi yang siap dijalankan.

    3. Docker Container — Instansiasi aktif yang sedang berjalan dari sebuah Image.

    Contoh Dockerfile untuk Aplikasi Node.js/Next.js

    # Gunakan base image resmi Node.js
    FROM node:18-alpine
    
    # Set working directory di dalam container
    WORKDIR /app
    
    # Copy package.json dan install dependensi
    COPY package*.json ./
    RUN npm install --production
    
    # Copy seluruh file aplikasi
    COPY . .
    
    # Build aplikasi
    RUN npm run build
    
    # Expose port 3000
    EXPOSE 3000
    
    # Jalankan aplikasi
    CMD ["npm", "start"]

    Perintah Dasar Docker CLI

    # Build Docker Image dari Dockerfile
    docker build -t my-codebook-app .
    
    # Jalankan Container di port 3000
    docker run -d -p 3000:3000 --name codebook_app my-codebook-app
    
    # Lihat container yang sedang berjalan
    docker ps
    
    # Lihat log dari container
    docker logs -f codebook_app
    
    # Hentikan container
    docker stop codebook_app