tom*_*per 9 ubuntu-server docker
我已经开始使用docker for dev,具有以下设置:
就主机容器访问而言 - 一切正常. 但是,我无法从远程计算机(尽管仍在同一网络中)访问容器的webapp.
跑步时
docker port <container-id> 443
Run Code Online (Sandbox Code Playgroud)
输出是预期的,所以docker的端口绑定似乎很好.
172.16.*.*:<random-port>
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
谢谢!
我想出了我错过的内容,所以这里有一个从远程机器访问docker容器webapps的简单流程:
步骤#1:将物理主机端口(例如22,443,80,...)绑定到容器的虚拟端口.可能的语法:
docker run -p 127.0.0.1:443:3444 -d <docker-image-name>
Run Code Online (Sandbox Code Playgroud)
(有关所有选项的端口重定向,请参阅docker docs)
步骤#2:将主机的物理端口重定向到容器的已分配虚拟端口.可能的(linux)语法:
iptables -t nat -A PREROUTING -i <host-interface-device> -p tcp --dport <host-physical-port> -j REDIRECT --to-port <container-virtual-port>
Run Code Online (Sandbox Code Playgroud)
这应该涵盖基本用例.
祝好运!
| 归档时间: |
|
| 查看次数: |
18453 次 |
| 最近记录: |