Dua perintah penting dalam Docker yang kadang bikin bingung: RUN
dan CMD
. Saya akan menjelaskan apa artinya dan kapan kita pakai yang mana.
1. RUN
:
Ini kayak perintah yang dilakukan saat kita sedang bikin Docker image. Jadi, bayangin lagi kita lagi masak resep itu. Nah, dalam langkah-langkah bikin, kita bisa kasih perintah RUN
buat melakukan hal-hal seperti nyiapin bahan-bahan dan semacamnya. Biasanya, ini digunakan buat menginstal hal-hal yang diperlukan sama aplikasi kita.
Misalnya, kita bisa bilang begini di "resep" Docker kita:
RUN apt-get update && apt-get install -y curl
Nah, pas kita lagi "masak", perintah ini bakal dijalankan buat ngasih tahu Docker "Hei, pasangin 'curl' dong!".
2. CMD
:
Ini lebih kayak perintah "default" buat menjalankan aplikasi kita dalam container. Ini kayak aturan mainnya. Saat kita menjalankan kontainer, perintah dalam CMD
bakal otomatis berjalan. Jadi, ini semacam kasih tahu Docker, "Hei, kalau kontainer ini dihidupin, jalankan ini ya!"
Contoh yang simple:
CMD ["npm", "start"]
Nah, kalau kita menjalankan kontainer ini, otomatis aplikasinya bakal jalan dengan perintah npm start
.
Tapi, ada juga cara lain buat tulis perintah CMD
. Kita bisa juga pakai yang bentuk "shell":
CMD npm start
Artinya sama aja, cuma ini kayak lagi ngomong ke shell "Hei, jalanin npm start
ya!". Yang ini sering dipakai kalau kita mau pake sintaks shell, misalnya pakai titik koma atau variabel lingkungan.
Singkatnya:
-
RUN
dipakai buat jalanin perintah pas lagi bikin Docker image. -
CMD
dipakai buat tentuin perintah bawaan pas kita menjalankan kontainer. - Perintah di
RUN
dieksekusi waktu membuat Docker image, kayak masak-masak. Perintah diCMD
dieksekusi waktu kontainer hidup. -
RUN
bantu buat bikin, sedangkanCMD
terkait sama cara aplikasi jalan di dalam kontainer.
Nah, kira-kira begitulah. Jadi, RUN
itu kayak masak, sedangkan CMD
itu kayak peraturan main aplikasi di kontainer.
Top comments (0)