我正在尝试配置fig,这样我就可以连接到数据库服务器,而无需指定完全限定的域名。数据库运行在裸金属上(不是在码头)。在主机上,glinda.local是在/etc/hosts中指定的,我希望容器能够模拟这种行为(尽管不依赖于主机的配置)。
我在github上找到了这一建议,但是它失败了,因为/etc/hosts位于只读文件系统上。
因此,问题仍然是,如何将glinda.local从fig.yml添加到fig.yml容器中的/etc/hosts中?
发布于 2015-02-19 20:00:05
从Dockerv1.3.1(我认为),您可以在docker run中使用选项docker run。不幸的是,这个选项还没有被合并到图中:master,但是有带着它的公关。当合并(或使用该分支)时,您应该能够以这种方式使用它:
extra_hosts 添加主机名映射。使用与码头客户端添加主机参数相同的值。
> extra_hosts:
> - docker: 162.242.195.82
> - fig: 50.31.209.229带有ip地址和主机名的条目将在此服务的容器内的/etc/host中创建,例如:
> 162.242.195.82 docker
> 50.31.209.229 fig发布于 2015-02-19 17:30:43
你凭什么认为/etc/hosts是只读的?在Docker 1.5中,以下内容适用于我:
$ docker run -it debian
root@0989fd55e8fa:/# echo "127.0.0.1 test" >> /etc/hosts
root@0989fd55e8fa:/# ping test
PING test (127.0.0.1): 48 data bytes
56 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.078 ms
56 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.068 ms
^C--- test ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.068/0.073/0.078/0.000 ms你是说这对你没用吗?如果上述方法有效,您应该能够将所需的内容添加到入口点脚本中。
https://stackoverflow.com/questions/28610849
复制相似问题