“Punya container tapi nggak bisa komunikasi? Itu kayak punya HP tapi lupa beli paket data!”
Docker tanpa jaringan itu seperti kota tanpa jalan raya – semua ada, tapi nggak ada yang bisa ke mana-mana! Nah, itulah kenapa jaringan bridge di Docker penting banget.
Di artikel ini, kita bakal bahas:
Apa itu Bridge Network di Docker?
Cara menghubungkan container ke jaringan bridge.
Contoh praktis biar makin gampang paham.
1. Apa Itu Bridge Network di Docker?
Bridge Network adalah jaringan default di Docker yang memungkinkan container dalam satu host bisa berkomunikasi satu sama lain.
Saat kamu menjalankan container tanpa menyebutkan jaringan secara spesifik, Docker secara otomatis akan menempatkannya ke dalam jaringan bridge default (bridge
).
Coba cek jaringan yang ada di Docker kamu!
docker network ls
Outputnya bakal kelihatan seperti ini:
NETWORK ID NAME DRIVER SCOPE
f3d8efefc5b7 bridge bridge local
07a29dbdd61f host host local
9c293fac2e3d none null local
Dari output ini, kita bisa lihat kalau Bridge adalah jaringan bawaan dari Docker.
2. Cara Membuat Jaringan Bridge Custom
Kadang, kita butuh jaringan bridge khusus agar lebih fleksibel dalam mengelola container. Caranya gampang banget!
docker network create --driver bridge my_bridge
Untuk memastikan jaringan baru sudah dibuat, cek dengan:
docker network ls
3. Menghubungkan Container ke Jaringan Bridge
Sekarang, mari kita buat dua container dan menghubungkannya ke jaringan my_bridge yang tadi kita buat.
Langkah 1: Jalankan Container dalam Jaringan Bridge
Jalankan dua container di jaringan my_bridge:
docker run -d --name web --network my_bridge nginx
docker run -d --name db --network my_bridge mysql:8
Dengan ini, container web
bisa mengakses db
dengan menggunakan nama db
sebagai hostname!
4. Menghubungkan Container ke Jaringan yang Sudah Ada
Bagaimana kalau kita sudah menjalankan container tanpa menentukan jaringan dan baru sadar harus dipindah? Tenang! Docker kasih solusi:
docker network connect my_bridge existing_container
Kalau misalnya ada container my_app
yang awalnya berjalan di jaringan lain, kita bisa tambahkan ke my_bridge:
docker network connect my_bridge my_app
Mudah banget, kan?
5. Menguji Koneksi Antar Container
Sekarang, mari kita uji apakah container dalam jaringan bridge bisa saling berkomunikasi.
Buka terminal dalam container web
:
docker exec -it web bash
Lalu coba ping container db
:
ping db
Kalau koneksi berhasil, kamu bakal lihat sesuatu seperti ini:
PING db (172.18.0.2): 56 data bytes
64 bytes from 172.18.0.2: icmp_seq=1 ttl=64 time=0.098 ms
Berarti container web
berhasil berkomunikasi dengan db
!
6. Menghapus Jaringan Bridge yang Tidak Digunakan
Kalau suatu saat kamu mau menghapus jaringan my_bridge, pastikan dulu tidak ada container yang terhubung ke sana!
Lihat dulu container yang masih terhubung:
docker network inspect my_bridge
Jika masih ada, lepaskan container dari jaringan dulu:
docker network disconnect my_bridge web
docker network disconnect my_bridge db
Baru setelah itu bisa kita hapus jaringannya:
docker network rm my_bridge
7. Kesimpulan: Bridge Network Itu Gampang dan Berguna!
Bridge Network di Docker memungkinkan container saling berkomunikasi dalam satu host.
Bisa menggunakan jaringan bridge default atau membuat jaringan custom.
Bisa menghubungkan container yang sudah berjalan ke jaringan bridge tanpa restart.
Sekarang, kamu udah makin paham soal jaringan bridge di Docker, kan?
0 Comments