2017-10-04 2 views
0

hostname -fはビルド時に空白を返しますが、ビルドが完了した後に正しいホスト名を返します。Docker Compose - ビルド時に間違ったホスト名

コンテナ内でパペットを実行しているので、提供されたホスト名を返すにはhostname -fが必要です。

ありがとうございました!

+0

なぜPuppetのホスト名が必要ですか? –

答えて

0

私の提案は、コンテナを使用すると、ホスト名を取得することはできません実行されていないので、もし構築プロセス中に容器が通常必要はありません... ...

+0

意味がある...構築時にホスト名が強制される可能性がありますか? – RadiantHex

+0

ホスト名で何をしたいですか?私の場合、ホスト名は相対的な静的なものであり、ドッカーのような環境ではあまり役に立ちません。 –

+0

マスターレスローカルデベロッパーPuppetの設定は、ホスト名が "dev-admin.local" – RadiantHex

0

を実行していないこと、ですドッカーのホスト名の設定を別にする...ドッカーがそのサービス名で通信しています。彼らは簡単に呼び出すことにより、相互に通信することができます

あなたがドッキングウィンドウ-コンを使用して画像「のnginx」と「PHP」は、同じネットワーク「サーバ」であるため、次の設定

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"と "ping php"というコンテナに接続することができます.IPやホスト名を気にする必要はありません。 "dev-admin.local"が呼び出された設定ファイルを更新し、それを目的のホストに置き換えるだけです。

関連する問題