Secara defult docker menggunakan network driver dengan mode bridge. Kali ini kita akan membahas basic dalam menggunakan docker.
Docker network adalah opsi menu yang memungkinkan kamu bisa melakukan segala hal yang berhubungan dengan manajemen jaringan seperti membuat jaringan, melihat informasi jaringan secara detail, menghubungkan jaringan.
Untuk menampilkan jaringan yang tersedia di dalam container.
$ docker network ls
Outputnya seperti di bawah ini.
NETWORK ID NAME DRIVER SCOPE 62fb6cb554ea bridge bridge local 93df11703c57 docker-nginx-demo_default bridge local a2f42e6ce1c5 docker-nginx-flask-demo_default bridge local abc892ba1630 docker-nginx_default bridge local 958a891144b2 docker-node_default bridge local dfa1034ad66f host host local fc38be0dc00e laravelapp_default bridge local d3dba9811891 learn-docker-compose_default bridge local 81af16f734f0 myapp_default bridge local 5ee7425a540e mysql_database-net bridge local ee80acb58e0a mysql_default bridge local 3e91ff0a956e nginx-demo-docker_default bridge local 4a351a0b1109 nginxcompose_default bridge local c3e4d00dc4e0 ngix-docker-compose_default bridge local 664c3f4a67e8 none null local
Selanjutnya kita akan membuat network baru dengan nama container laravelapp_default nginxcompose_default
dengan images image nginx:stable-alpine
$ docker run -d --name laravelapp_default nginx:stable-alpine $ docker run -d --name nginxcompose_default nginx:stable-alpine
dan untuk menampilkan informasinya seperti di bawah ini.
$ docker inspect laravelapp-default
Dan hasilnya seperti di bawah ini.
[ { "Name": "laravelapp_default", "Id": "fc38be0dc00e5b54a4fb2a9d61c9facf91d40c7f0940c3479e0895b315399335", "Created": "2022-12-17T22:44:32.539559768+07:00", "Scope": "local", "Driver": "bridge", "EnableIPv6": false, "IPAM": { "Driver": "default", "Options": null, "Config": [ { "Subnet": "172.21.0.0/16", "Gateway": "172.21.0.1" } ] }, "Internal": false, "Attachable": false, "Ingress": false, "ConfigFrom": { "Network": "" }, "ConfigOnly": false, "Containers": {}, "Options": {}, "Labels": { "com.docker.compose.network": "default", "com.docker.compose.project": "laravelapp", "com.docker.compose.version": "2.14.0" } } ]
Selanjutnya untuk menampilkan informasi nama bridge .
docker network inspect bridge
Hasilnya seperti di bawahi ini.
[ { "Name": "bridge", "Id": "62fb6cb554ea94e964b4cfa6fabef58097859b592f19b81fb18f7528ac05670f", "Created": "2022-12-30T14:28:21.613932985+07:00", "Scope": "local", "Driver": "bridge", "EnableIPv6": false, "IPAM": { "Driver": "default", "Options": null, "Config": [ { "Subnet": "172.17.0.0/16", "Gateway": "172.17.0.1" } ] },
Untuk membuat bridge network dengan nama hidayat-net
.
docker network create hidayat-net
Menampilkan output.
docker network ls NETWORK ID NAME DRIVER SCOPE 1652fc7934a6 bridge bridge local 547776771fe2 host host local 2aa8cf07ab2e net-web bridge local a4d149a845ae none null local
Kemudian kita akan mencoba membuat container dengan opsi network.
$ docker run -d --name html1 --network net-web nginx:stable-alpine $ docker run -d --name html2 --network net-web nginx:stable-alpine
Uji ping ke html1 dan html2
$ docker exec html1 ping html2
Untuk menghubungkan container.
$ docker network connect net-web html1 $ docker network connect net-web html2
Untuk melepaskan container.
docker network disconnect laravel-app html1Untuk menghapus networknya gunakan perintah.
$ docker network rm mysql_default
$ docker network prune