What IP address can I use when on Windows machines for an IP of a Docker Container running within a VM on Virtual Box?
I have:
On the VM I can run docker commands and see container running
vagrant@ubuntu-xenial:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e7a41b3edecd nrel/api-umbrella "api-umbrella run" 17 minutes ago Up 17 minutes 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp api-umbrella
vagrant@ubuntu-xenial:~$
The IP of that container is:
vagrant@ubuntu-xenial:~$ docker inspect e7a41b3edecd | grep "IPAddress"
"SecondaryIPAddresses": null,
"IPAddress": "172.17.0.2",
"IPAddress": "172.17.0.2",
vagrant@ubuntu-xenial:~$
I can the ping IP 172.17.0.2 and curl http://172.17.0.2 on the VM itself. But when trying http://172.17.0.2 on Windows machines I have not response.
QUESTION - What IP do I use from Windows machine to get at the Docker container running on the VM?
In order to expose your docker IP to your host machine, you need to set your VM Network Settings into "Bridged Adapter".
I use macOS but I think its the same in windows.
After that, check your VM IP. For example if your VM IP 192.168.30.100, and your docker run in port 8000. Now you can access your docker with IP 192.168.30.100:8000 from your host.
If you are using Windows with Ubuntu VM and inside the Ubuntu VM you are running Docker Containers, you will need to expose the ports that you can needed in your docker-compose file or when you are creating the cointainer for example
docker-compose.yml example:
version: '3.1'
services:
rabbitmq:
build:
context: .
dockerfile: Rabbit-Dockerfile
container_name: broker
restart: always
environment:
TZ: GMT
RABBITMQ_DEFAULT_USER: rabbitIpi
RABBITMQ_DEFAULT_PASS: ipitasks2018
tty: true
hostname: rabbit
networks:
celerynet:
aliases:
- rabbit
ports: - 5672:5672 - 5671:5671 - 4369:4369 - 25672:25672 - 8181:15672
networks:
celerynet:
driver: bridge
docker run example:
docker run -d -p 80:80 --name webserver nginx
After you exposed the ports of your container in the Ubuntu VM, you will need to access to the ip of your Ubuntu VM with the port of your containers.
If you have a firewall on your ubuntu VM you will need to open the ports that your containers will used
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With