Halo, kalau kamu merasa tulisan saya ngebantu kamu, kamu bisa ucapkan terima kasih lewat saweria .

If you feel this website help you, you can donate at saweria .



What I Used in This Tutorial

  1. slim, docker-slim, slim sensor 1.40.6

  2. Docker version 24.0.7, build afdd53b


How To Install Slim

curl -o /tmp/slim.tar.gz https://downloads.dockerslim.com/releases/1.40.6/dist_linux.tar.gz
tar -xvf /tmp/slim.tar.gz

#it will extract folder dist_linux
#then move docker-slim, slim, slim-sensor to /usr/bin
sudo mv /tmp/dist_linux/* /usr/bin/

How To Use Slim

  1. Basic command

    docker-slim build --target your-docker-images:latest --http-probe=false --exec "curl -4 icanhazip.com" 
    
  2. Dengan command di atas, docker-slim bakal buat satu image baru dengan tambahan .slim (your-docker-images.slim:latest)

  3. Di case saya, menggunakan simple command ini berhasil. Catatan, image saya ini project simpel berisi image nginx yang hanya menampilkan static HTML

Reduce Berhasil, Lumayan Besar Reduce-nya

Reduce Berhasil, Lumayan Besar Reduce-nya

Perbandingan Image Lama dan Image Hasil Slim

Perbandingan Image Lama dan Image Hasil Slim


Catatan

Beberapa catatan saya saat jalanin docker-slim

  1. Semua image berhasil di reduce pake slim, tapi beberapa image malah ga jalan. Dari 2 project NodeJS, 1 berhasil 1 gagal. Yang gagal ini lebih kompleks project-nya

  2. Setelah mencoba memperbaiki 1 error setelah di reduce, malah muncul error lain berbeda. Karena cukup melelahkan, ga usah maksain pake slim, ngabisin waktu

  3. Kadang si slim ini ga bakal bawa project yang pake command COPY di Dockerfile, jadi gunakan command berikut

    docker-slim build  --dockerfile Dockerfile \ 
    --dockerfile-context project-folder --http-probe=false \ 
    --exec "curl -4 icanhazip.com" --tag your-docker-images:slim \ 
    --target ryour-docker-images:latest --include-path /var/www/html
    
  4. Kudu banyak trial & error, kudu ngoprek semua command si slim ini

  5. Jangan gunakan di production image versi slim tanpa test menyeluruh!

Referensi:

  1. Github - Slim