177

私のdocker-compose.ymlファイルには、次のものがあります。ただし、コンテナはホスト名の値を取得しません。何か案は?

dns:
  image: phensley/docker-dns
  hostname: affy
  domainname: affy.com
  volumes:
    - /var/run/docker.sock:/docker.sock

コンテナー内のホスト名を確認すると、取得されませんaffy

4

6 に答える 6

61

これは正しく動作しているようです。あなたの設定をファイルに入れると:

$ cat > compose.yml <<EOF
dns:
  image: phensley/docker-dns
  hostname: affy
  domainname: affy.com
  volumes:
    - /var/run/docker.sock:/docker.sock
EOF

そして、物事を持ち出します:

$ docker-compose -f compose.yml up
Creating tmp_dns_1...
Attaching to tmp_dns_1
dns_1 | 2015-04-28T17:47:45.423387 [dockerdns] table.add tmp_dns_1.docker -> 172.17.0.5

そして、コンテナ内のホスト名を確認してください。すべて問題ないようです。

$ docker exec -it stack_dns_1 hostname
affy.affy.com
于 2015-04-28T17:48:50.223 に答える
46

ドッカーのドキュメントに基づく: https://docs.docker.com/compose/compose-file/#/command

hostname: <string> docker-compose ファイルを入れるだけ です。

例えば:

[...]

lb01:
  hostname: at-lb01
  image: at-client-base:v1

[...]

コンテナ lb01 がat-lb01ホスト名として取得されます。

于 2016-11-01T23:39:06.993 に答える