将Docker容器IP添加到主机/ etc / host

时间:2016-07-28 00:35:17

标签: docker docker-compose

我正在学习Docker的绳索,但有一件事似乎让我感到难过。我试图在其他地方(add entry to host /etc/hosts file when a docker container is started)找到我的问题的答案,但似乎没有一个能解决我的问题。

我使用的是docker-compose版本2,docker-compose.yml看起来像这样:

version: "2"
services:
  web:
    image: php:5-apache
    extra_hosts:
      - "example.com:127.0.0.1"
    ports:
      - "80"
    command: php -S 0.0.0.0:80 -t /var/www/html
    working_dir: /var/www/html
    restart: always

我希望能够在主机上转到example.com并让它指向docker容器。而且,看起来Docker容器IP可以在重启时改变吗?有没有办法在重启后跟踪IP?

我猜我所追求的是:https://github.com/cogitatio/vagrant-hostsupdater

2 个答案:

答案 0 :(得分:1)

docker引擎不管理主机上的/etc/hosts文件,只管理容器内部(但优先使用DNS服务)。

您可以通过主机上的任何其他方法(手动或使用配置管理工具)修改/etc/hosts文件。

答案 1 :(得分:0)

您应该在Google上搜索Docker hostupdater。尽管有许多Docker容器仅适用于Linux主机,但有许多Docker容器使之成为可能。

例如,您可以尝试以下项目: http://localhost:55987/api/Empleados