How to send http request from Docker to localhost or Virtual Machine

Being new to Docker and VM’s, I have run into a blocker. I have a node app that needs to send a POST request from a Docker container to a Virtual Machine or to my local machine.

I have read through the Docker documentation, but still don’t understand what I need to do in order to accomplish this.

  • Docker run cron jobs in parallel
  • Phoenix Framework - docker image for development and deployment to Kubernetes
  • Flanneld not working in Kubernetes Multinode Example
  • How to notify application about updated config file in kubernetes?
  • Creating a Dockerfile - docker starts from scratch on each new build
  • How can i mount volume of glusterfs to /var/lib/docker in ubuntu 14.04
  • So how can I send an http request from my node app running in a Docker Container to my Vagrant Box?

  • Can not ping docker in macOS
  • Bidirectionnal Sync with shell/terminal and actual code in Codenvy
  • Which approach is better for discovering container readiness?
  • Elastic Beanstalk local environment (with Docker) connection refused
  • How to stop gcloud docker -a overwriting long-lived credentials?
  • How to mitigate privilege escalation in Docker Containers to secure the host FS
  • One Solution collect form web for “How to send http request from Docker to localhost or Virtual Machine”

    By default, Docker creates a virtual interface (docker0) in your host machine with IP 172.17.42.1. Each of the container launched will have an IP of the network 172.17.42.1/16, and they will be able to connect to host machine connecting to IP 172.17.42.1.

    If you want to connect a docker container with another service running in a virtual machine running with other provider (e.g.: virtualbox, vmware), the easiest way is forwarding the ports needed by the service to you host machine and then, from your docker container, connecting to IP 172.17.42.1. You should check your virtual machine provider documentation to see details about this. And if you are using libvirt/KVM (or with any other provider), you can use iptables to enable port forwarding.

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