代码之家  ›  专栏  ›  技术社区  ›  Marcin Nabiałek

MAC Docker-强制静态IP

  •  0
  • Marcin Nabiałek  · 技术社区  · 8 年前

    我正在使用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。

    如果你还需要补充什么,请告诉我。

    2 回复  |  直到 8 年前
        1
  •  1
  •   avigil    8 年前

    Docker for Mac提供 networking layer 这将公开主机上已发布的docker端口。如果您正在从同一台计算机访问容器,则应该能够使用 localhost 访问docker服务。链接文档中的示例使用nginx作为示例:

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

    运行此命令后,您应该会看到一个页面正在 http://localhost 在浏览器中。

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

        2
  •  0
  •   Ben Njeri    8 年前

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

    如果是docker网络,则为网络提供静态IP地址。关于Docker网络的全面指南在Aquasec上 Docker containers Wiki页面。

    推荐文章