Mengelola jaringan di docker - Tutorial Docker 07


Kembali melanjutkan catatan tentang docker, pada tutorial kali ini saya ingin membahas tentang jaringan di dalam docker. Tahukah anda bahwa ketika kita menjalankan container pada docker, sebenarnya container tersebut juga terhubung ke dalam jaringan virtual? Bahkan di container yang sedang running tersebut tenyata container itu memiliki alamat IP yang secara otomatis diberikan oleh docker ketika container berjalan. 

Virtual network tersebut yang nanti akan terhubung ke jaringan external docker atau ke jaringan host docker sehingga container yang berjalan didalam docker bisa berkomunikasi dengan komputer diluar docker.

Berikut illustrasi jaringan virtual di container pada docker:

Untuk melihat jaringan virtual yang tersedia pada docker saya cukup menjalankan perintah:

perintah di atas akan menampilkan keluaran seperti ini


dari hasil keluaran di atas terlihat bahwa ada beberapa jaringan virtual yang bernama:
  1. bridge
  2. host
  3. my-network, dan
  4. none
Untuk membuat jaringan baru, saya cukup menjalankan perintah:


apabila saya jalankan lagi perintah "sudo docker network ls"  lagi hasilnya adalah sebagai berikut:


dari situ anda dapat melihat bahwa my-2nd-network telah berhasil dibuat. Jadi jaringan yang ada didalam docker terdiri dari:
  1. bridge
  2. host
  3. my-network
  4. none, dan
  5. my-2nd-network
Untuk menghapus jaringan tersebut, saya cukup menjalankan perintah:


maka jaringan virtual "my-2nd-network" akan dihapus oleh docker. Cukup mudah bukan? Lalu saya coba akan menghapus jaringan "my-network" melalui perintah:


maka hasilnya:


ternyata error dan jaringan my-network tidak bisa dihapus. Hal ini dikarenakan jaringan my-network telah dipasangkan ke container. Untuk melihat container apa saja yang terhubung di dalam jaringan "my-network" tersebut, saya cukup menjalankan perintah:


dan berikut ini hasilnya:


Pada bagian containers terlihat bahwa ada container bernama my-apache yang terhubung dengan jaringan virtual "my-network". Agar dapat menghapusnya maka container bernama my-apache harus diputus hubungan dulu dengan jaringan virtual my-network. Untuk memutus hubungan container my-apache saya dari my-network cukup dengan perintah:


setelah itu baru saya akan hapus jaringan my-network pada docker dengan perintah:


jika saya lihat lagi status jaringan docker, maka network bernama my-network sudah terhapus dari dalam docker seperti keluaran di bawah ini:


Mengelola jaringan virtual di docker ternyata cukup mudah bukan? Selamat mencoba dan terima kasih telah mampir

Comments