docker (running in virtual box) expose port on host machine

I’m running docker in virtual box (docker machine) on a MAC server. I have some running containers that expose certain ports to the host machine, so I can access them via URL of the virtual machine + exposed port. But I’m not able to reach the exposed services from outside the host system, as the docker containers are sandboxed in their own virtual network I guess.

Is it possible to also expose the port on the host machine so people from outside can reach the web services running in docker inside my virtual machine?

  • Disabling docker image tag updating
  • Docker - exporting the DB file
  • docker registry with s3
  • How do I connect a docker container to ssh forward Xserver on the host?
  • How best to run one-off migration tasks in a kubernetes cluster
  • Ubuntu docker container with upstart and syslog
  • neo4j in Dockerfile - “service neo4j-service start” not detaching
  • Why starting a docker container changes the host's default route?
  • error with docker-compose and django
  • Localhost connection refused in Docker development environment
  • Fetching git behind proxy in docker container
  • Docker Java Client in JMeter
  • One Solution collect form web for “docker (running in virtual box) expose port on host machine”

    There are 2 options:

    • Selecting Bridged Networking: in bridged mode, the virtual machine will appear as a separate device on your network and have its own IP address.
    • Port forwarding (NAT): This is only necessary when you don’t want to use the Bridge apdater

    I hope this guide can help you.

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.