我怎么在启动一个容器的时候指定一个固定的IP或者是域名呢


我怎么在启动一个容器的时候指定一个固定的IP或者是域名呢?
已邀请:

william - cSphere CEO

赞同来自: Misul tsing


使用Docker支持的网络,要么使用host网络模式,要么用默认的端口映射。

如果不想使用上面的模式,那么可以考虑在docker daemon启动时指定bridge,并在该bridge上配置ip,同时将eth0放到这个bridge里。在运行container时网络使用none,手工配置。具体可以看docker文档里
https://docs.docker.com/articles/networking/ 关于自定义网络部分Customizing docker0

Csphere在后续版本中会内建网络管理功能,简化复杂的配置管理工作。

icebolt - Docker爱好者暗黑

赞同来自: Misul


将外网ip绑定到宿主机,然后端口映射。

icebolt - Docker爱好者暗黑

赞同来自: Misul


如果服务简单,用端口管理吧。如果有需求做集群,就用服务发现。不应该把自己服务绑死在ip上。

tifayuki - Tutum 工程师

赞同来自: 郭蕾


1)可以用weave指定ip
2)其实可以在container中指定hostname,然后用dns做服务发现

Misul

赞同来自:


我现在要运行一个meteor的站点,不知道怎么去发布到外网

小璐 - 云雀科技市场,Container技术日报运营。

赞同来自:


不知道这个issue:Assign IP statically or via DHCP to a container #4952能不能解决你的问题。

不过这种配置还是有点复杂,可以试下我们的AlandaCloud,很简单就可以将域名绑定到你所启动的Docker服务上,这篇博客里有详细的介绍

Misul

赞同来自:


我现在的解决办法是共享宿主机器的IP和端口
我现在部署的项目是公司内部用的,所以这样暂时能解决我现在的问题

xds2000 - 数人科技CTO

赞同来自:


--ip的功能社区已经有提议的。目前Docker公司希望把网络和存储作为plugin的机制提供给开发者以及用户。所以这个特性将会有一段时间没有不会有官方解决办法。

要回复问题请先登录注册