Docker - Container dan Hosts

Hai, para penggemar teknologi yang bersemangat! Saya sangat gembira untuk memulai perjalanan Docker bersama Anda. Sebagai guru maya yang berpengalaman, saya akan memandu Anda melalui dunia menarik kontainer dan host. Jangan khawatir jika Anda baru dalam pemrograman - kita akan mulai dari dasar dan bangun ke atas. Ayo masuk ke dalamnya!

Docker - Container & Hosts

Docker Images

Bayangkan Anda menyiapkan barang untuk perjalanan. Anda akan membuat daftar semua yang Anda butuhkan, betul? Itu tepat apa yang disebut Docker image - sebuah rancangan 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"]

mariuraikan ini:

  1. FROM python:3.9-slim: Ini seperti mengatakan, "Saya ingin memulai dengan lingkungan Python 3.9 minimal."
  2. WORKDIR /app: Kita menyiapkan ruang kerja, seperti membuat folder baru untuk proyek kita.
  3. COPY . /app: Kita menyalin file lokal kita ke dalam kontainer.
  4. CMD ["python", "hello.py"]: Ini adalah perintah yang akan dijalankan saat kita memulai kontainer.

Untuk membuat image ini, kita akan menjalankan:

docker build -t my-hello-world .

Menjalankan Kontainer

Sekarang kita punya image, mari kita hidupkan itu! Menjalankan sebuah kontainer seperti memulai sebuah komputer virtual yang sudah terisi aplikasi Anda.

Basic Container Run

docker run my-hello-world

Perintah ini akan memulai sebuah kontainer berdasarkan image my-hello-world dan menjalankan script hello.py.

Mode Interaktif

kadang-kadang, Anda ingin berinteraksi dengan kontainer Anda. Itu seperti membuka terminal 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 mengelola mereka. PERTimbangkan 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 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 sebuah kontainer Docker saat Anda selesai menggunakannya.

Menghentikan Secara Graceful

docker stop <container_id>

Ini mengirimkan sinyal SIGTERM, membiarkan kontainer menutup secara graceful.

Menghentikan Secara Paksa

docker kill <container_id>

Ini seperti menutup paksa aplikasi. Gunakan ini saat docker stop tidak bekerja.

Menghapus Kontainer

Setelah menghentikan kontainer, Anda mungkin ingin menghapusnya sepenuhnya:

docker rm <container_id>

Tips Profesional: Anda dapat menggabungkan perintah menghentikan dan menghapus 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, khusus. Setiap kontainer adalah lingkungan terpisah, siap menjalankan aplikasi Anda secara konsisten di setiap sistem.

Saat kita mengakhiri, 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-truk ini, memulainya, atau menghapusnya sesuai kebutuhan.

Dalam pelajaran berikutnya, kita akan mendalami jaringan Docker dan keabadian data. Sampai jumpa, selamat mengontainer!

Credits: Image by storyset