Docker - Kontainer dan Hosts
Hai, para penggemar teknologi yang bersemangat! Saya sangat senang untuk memulai perjalanan Docker bersama Anda. Sebagai guru maya yang memiliki tahun-tahun pengalaman, saya akan memandu Anda melalui dunia menarik kontainer dan host. Jangan khawatir jika Anda baru dalam programming – kita akan mulai dari dasar dan membangun langkah demi langkah. Ayo masuk ke dalam!
Docker Images
Bayangkan Anda sedang menyiapkan barang untuk perjalanan. Anda akan membuat daftar semua yang Anda butuhkan, kan? Itu tepatnya apa yang disebut Docker image – blueprin dari semua yang diperlukan sebuah kontainer untuk berjalan. Itu seperti resep untuk aplikasi Anda, termasuk kode, runtime, pustaka, dan tools sistem.
Membuat Docker Image Pertama Anda
Ayo membuat Docker image sederhana untuk sebuah aplikasi "Hello, World!":
# Dockerfile
FROM python:3.9-slim
WORKDIR /app
COPY . /app
CMD ["python", "hello.py"]
mari kitauraikan ini:
-
FROM python:3.9-slim
: Ini seperti mengatakan, "Saya ingin memulai dengan lingkungan Python 3.9 minimal." -
WORKDIR /app
: Kita menyiapkan ruang kerja, seperti membuat folder baru untuk proyek kita. -
COPY . /app
: Kita menyalin file lokal kita ke dalam kontainer. -
CMD ["python", "hello.py"]
: Ini adalah perintah yang akan dijalankan saat kita memulai kontainer.
Untuk membangun image ini, kita akan menjalankan:
docker build -t my-hello-world .
Menjalankan Kontainer
Sekarang kita memiliki image kita, mari kita hidupkan itu! Menjalankan sebuah kontainer adalah seperti memulai sebuah komputer virtual yang sudah terisi aplikasi Anda.
Menjalankan Kontainer Dasar
docker run my-hello-world
Perintah ini akan memulai sebuah kontainer berdasarkan image my-hello-world
dan menjalankan skrip hello.py
.
Mode Interaktif
kadang-kadang, Anda ingin berinteraksi dengan kontainer Anda. Itu seperti membuka terminal secara langsung di dalam kontainer:
docker run -it my-hello-world /bin/bash
Flag -it
membuat kontainer interaktif, dan /bin/bash
memulai shell bash.
Menampilkan Semua Kontainer
Saat Anda bekerja dengan Docker, Anda akan membuat banyak kontainer. Penting untuk memantau mereka. Pahami ini sebagai memeriksa aplikasi mana yang sedang berjalan di komputer Anda.
docker ps
Perintah ini menampilkan semua kontainer yang sedang berjalan. Untuk melihat semua kontainer, termasuk yang telah berhenti:
docker ps -a
Berikut adalah tabel yang praktis dari opsi docker ps
:
Opsi | Deskripsi |
---|---|
-a, --all | Tampilkan semua kontainer (default menampilkan yang sedang berjalan saja) |
-q, --quiet | Hanya tampilkan ID kontainer |
-s, --size | Tampilkan ukuran file total |
--format | Cetak kontainer secara indah menggunakan template Go |
Menghentikan Kontainer
Seperti menutup aplikasi di komputer Anda, Anda dapat menghentikan kontainer Docker saat Anda selesai menggunakannya.
Menghentikan Dengan hormat
docker stop <container_id>
Ini mengirimkan sinyal SIGTERM, memungkinkan kontainer untuk berhenti secara hormat.
Menghentikan Dengan Paksa
docker kill <container_id>
Ini seperti memaksakan penutupan aplikasi. Gunakan ini saat docker stop
tidak bekerja.
Menghapus Kontainer
Setelah menghentikan kontainer, Anda mungkin ingin menghapusnya sepenuhnya:
docker rm <container_id>
Tips Pro: Anda dapat menggabungkan penghentian dan penghapusan dalam satu perintah:
docker rm -f <container_id>
Kesimpulan
Selamat! Anda telah mengambil langkah pertama ke dunia kontainer dan host Docker. Ingat, bekerja dengan Docker adalah seperti mengelola armada komputer kecil, spesialis. Setiap kontainer adalah lingkungan terpisah, siap menjalankan aplikasi Anda secara konsisten di mana saja.
Sementara itu, ini adalah analogi yang menyenangkan: kontainer Docker adalah seperti food truck. Setiap truk (kontainer) memiliki semua yang diperlukan untuk membuat dan melayani spesialisnya (menjalankan aplikasi Anda). Anda dapat mudah memindahkan truk ini, memulainya, atau menutupnya sesuai kebutuhan.
Dalam les kita berikutnya, kita akan mendalami jaringan dan persistensi data Docker. Sampai jumpa, semangat menkontainer!
Credits: Image by storyset