Docker Compose - 构建期间的主机名错误

时间:2017-10-04 09:29:21

标签: docker networking docker-compose puppet

hostname -f在构建期间返回空白,但在构建完成后返回正确的主机名。

我需要hostname -f来返回提供的主机名,因为我在容器中运行Puppet。

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

我的建议是,在构建过程中容器没有运行......所以如果容器没有运行,你就无法获得主机名......

答案 1 :(得分:0)

通常,您不需要在docker中为主机名单独配置... docker正在通过其服务名称进行通信。

如果您使用docker-compose并假设以下配置

version: "2"
services:
  nginx:
    build: docker/nginx
    ports:
      - "80:80"
    volumes:
      - "${PROJECT_ROOT}:/app:ro"
    depends_on:
      - php
    networks:
      - server
  php:
    build: docker/php-fpm
    expose:
      - 9000
    volumes:
      - "${PROJECT_ROOT}:/app"
    networks:
      - server

因为图像" nginx"和" php"是在同一个网络"服务器"通过调用服务名称作为主机,他们可以轻松地相互通信...... 所以你可以连接到容器" nginx"和#34; ping php" ...你不必关心ip或主机名。 因此,您只需要更新配置文件,其中" dev-admin.local"被调用并用所需的主机替换它。

相关问题