简体   繁体   中英

How to connect to a docker container running on a remote host

I have two windows machines Machine A, Machine B running Windows 10 with Hyper-V. Both machine A & B are on the same network.

On Machine BI install docker using the Windows installer. I pull an image and then run it with:

docker run -p 1337:1337 --name my-image

On machine BI can then access the http end point that is exposed by opening a browser window to http://127.0.0.1:1337 .

However I cannot seem to open that same http end point from machine A with:

http://machineA.ip.address:1337

There is no firewall between machine A and B.

Clearly I have a NAT problem between machine A and B when it comes to accessing the docker container on Machine B.

How do I access the HTTP end point exposed by the docker container running on Machine B from Machine A?

You have to expose docker guest port of container to bind it with host port.

$ docker run -p 0.0.0.0:1337:1337 --name my-image

Above command will bind it with all the network-interfaces.
If you want you can restrict access to specific network-interface by specific it's IP address.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM