0

我正在使用 Docker for Mac(以前我在 Windows 上使用 Docker Tollbox)并且我遇到了问题 - Docker 不时更改 IP - 到目前为止它只使用 IP 192.168.0.198 和 192.168.0.196

问题是 - 是否有可能以某种方式强制 Docker 始终使用相同的 IP。

当我设置时,现在非常令人沮丧:

  • 此 IP 的主机
  • SSH 到这个 IP
  • 数据库到这个IP

一段时间后,我似乎需要再次将其切换到另一个 IP,因为 Docker 决定使用不同的 IP。据我所知,这在 Windows 上从未发生过——Docker 一直使用相同的 IP。

如果您需要在此处添加更多内容,请告诉我。

4

2 回答 2

1

Docker for Mac 提供了一个网络层,可以在主机上公开您发布的 docker 端口。如果您从同一台机器访问容器,您应该能够使用localhost访问 docker 服务。链接文档中的示例以 nginx 为例:

docker run -d -p 80:80 --name webserver nginx

运行此程序后,您应该会在浏览器中看到一个在http://localhost提供的页面。

要访问主机外部的服务,您需要将 macOS 配置为使用手动配置的静态地址,如https://support.apple.com/kb/PH25448中所述,或者在 DHCP 配置中为您的计算机分配一个保留地址路由器。还要检查您是否有任何可能阻止流量的防火墙限制。如果一切设置正确,您只需使用 Mac 的地址即可访问您的容器。无需使用特殊地址。

于 2018-03-24T22:57:22.733 回答
0

docker bridge 使用的子网 192.168.0.x 还是只是一个主机网络?如果是主机网络,则为您的主机分配一个静态 IP 地址,而不是依赖可以随时为您分配不同 IP 地址的 DHCP 服务器。

如果是 docker 网络,则给网络一个静态 IP 地址。关于 Docker 网络的综合指南位于 Aquasec Docker 容器Wiki 页面。

于 2018-04-01T08:04:23.773 回答