[英]Docker: /etc/hosts not automatically updated on source container restart
让我们说我有:
一个pg_db
容器
docker run -d --name pg_db postgres
一个web
容器,链接到pg_db
容器
docker run -d --name web --link pg_db:db my-web-app
在web
容器中,我可以通过/etc/hosts
名称解析访问pg_db
。
# cat /etc/hosts
...
172.17.0.17 db
但是,如果我重新启动pg_db
容器,它有一个新的IP地址,并且文档说链接容器应该自动更新其/etc/hosts
文件,但这不是我的情况。
$ docker restart pg_db
$ docker inspect --format '{{.NetworkSettings.IPAddress}}' pg_db
172.17.0.21
在仍在运行的web
容器中:
# cat /etc/hosts
...
172.17.0.17 db <-- No change!!!
$ docker info
Containers: 5
Images: 67
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Dirs: 77
Execution Driver: native-0.2
Kernel Version: 3.13.0-24-generic
Operating System: Ubuntu 14.04 LTS
$ docker version
Client version: 1.3.0
Client API version: 1.15
Go version (client): go1.3.3
Git commit (client): c78088f
OS/Arch (client): linux/amd64
Server version: 1.3.0
Server API version: 1.15
Go version (server): go1.3.3
Git commit (server): c78088f
您还必须重新启动Web容器以获取更改。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.