Docker takes care of the networking aspects so that the containers can communicate with other containers and also with the Docker Host. If you do an ifconfig on the Docker Host, you will see the Docker Ethernet adapter. This adapter is created when Docker is installed on the Docker Host.
This is a bridge between the Docker Host and the Linux Host. Now let’s look at some commands associated with networking in Docker.
This command can be used to list all the networks associated with Docker on the host.
docker network ls
None
The command will output all the networks on the Docker Host.
sudo docker network ls
The output of the above command is shown below
If you want to see more details on the network associated with Docker, you can use the Docker network inspect command.
docker network inspect networkname
networkname − This is the name of the network you need to inspect.
The command will output all the details about the network.
sudo docker network inspect bridge
The output of the above command is shown below −
Now let’s run a container and see what happens when we inspect the network again. Let’s spin up an Ubuntu container with the following command −
sudo docker run –it ubuntu:latest /bin/bash
Now if we inspect our network name via the following command, you will now see that the container is attached to the bridge.
sudo docker network inspect bridge
One can create a network in Docker before launching containers. This can be done with the following command −
docker network create –-driver drivername name
drivername − This is the name used for the network driver.
name − This is the name given to the network.
The command will output the long ID for the new network.
sudo docker network create –-driver bridge new_nw
The output of the above command is shown below −
You can now attach the new network when launching the container. So let’s spin up an Ubuntu container with the following command −
sudo docker run –it –network=new_nw ubuntu:latest /bin/bash
And now when you inspect the network via the following command, you will see the container attached to the network.
sudo docker network inspect new_nw