Kodeloka
  1. Kodeloka
  2. Kelas Docker
  3. Materi

Dockerfile · Modul 16 dari 21

Docker Image Layers & Build Caching

Memahami arsitektur Layer Image, mekanisme caching Docker, optimasi urutan COPY, & file .dockerignore.

Docker Image Layers & Build Caching

Setiap instruksi di dalam Dockerfile (seperti RUN, COPY, ADD) menghasilkan sebuah **Read-Only Layer** baru di atas layer sebelumnya.

Mekanisme Build Cache Docker

Jika tidak ada perubahan pada suatu layer dan layer-layer sebelumnya, Docker akan memanfaatkan **Build Cache** sehingga proses build berikutnya selesai dalam hitungan detik!

⚡ Trik Optimasi Urutan Dockerfile:
Selalu letakkan instruksi yang jarang berubah (seperti menginstal dependensi package.json atau go.mod) di bagian ATAS, dan kode sumber aplikasi yang sering diubah di bagian BAWAH.

Contoh Struktur DOKERFILE SALAH (Lambat):

COPY . .
RUN npm install # <--- npm install akan SELALU diulang setiap kali ada 1 baris kode berubah!

Contoh Struktur DOKERFILE BENAR (Cepat dengan Cache):

COPY package*.json ./
RUN npm install # <--- Di-cache! Hanya diulang jika package.json berubah
COPY . .

File .dockerignore

Mirip dengan .gitignore, file .dockerignore mencegah file yang tidak perlu (seperti node_modules, .git, file log) terikut saat perintah COPY . . dijalankan.