我有安装了docker的linux计算机,它也可以用作NAT路由器。它具有多个接口,并且我需要docker默认情况下仅与其中一个进行通信。经过数小时的自定义网络尝试,我发现最好的解决方案是在指定端口映射时设置接口IP:
docker run -p 192.168.0.1:80:80 -d nginx
其中192.168.0.1
是我的接口IP。是否可以将docker设置为每次都使用该IP(接口)?例如。当我下载某人的docker-compose.yml并直接使用它时。
答案 0 :(得分:0)
您可以将“ ip”选项添加到/etc/docker/daemon.json
:
{
[...]
"ip":"192.168.0.1"
}
重新启动服务后,端口将在此接口上公开,而不是默认的0.0.0.0
。
afaik,daemon.json文件可以接受dockerd本身定义的任何选项:https://docs.docker.com/engine/reference/commandline/dockerd/