25

Docker Desktop for MacDocker Swarmを試す。私はこれを試しました:

docker-machine create -d virtualbox node-1
docker-machine create -d virtualbox node-2
docker-machine create -d virtualbox node-3

eval $(docker-machine env node-1)

docker swarm init \
    --secret my-secret \
    --auto-accept worker \
    --listen-addr $(docker-machine ip node-1):2377

最後のコマンド ( docker swarm init) は次のエラーを返します。

デーモンからのエラー応答: このシステムには複数のアドレスがあるため、アドバタイズする IP アドレスを選択できませんでした

何が起こっているのかわかりません。誰でもデバッグ方法を知っていますか?

4

7 に答える 7

26

まず、ネットワーク上のマシンのパブリック IP を探します

ifconfig

192.168.1.x のような物理的なものを選択します (docker0 ではなく、Docker 内部の仮想 IP です)。

docker swarm init --advertise-addr 192.1.68.1.x

(デフォルトはポート 2377 になります)

于 2018-04-29T23:15:03.110 に答える
9

Docker のガイドによると: https://docs.docker.com/get-started/part4/#create-a-cluster

--advertise-addr を使用する必要があるというエラーが表示されますか?

docker-machine ls を実行して仮想マシンの IP アドレスをコピーし、その IP を使用して --advertise-addr でポート 2377 (swarm 参加用のポート) を指定して docker swarm init コマンドを再度実行します。例えば:

docker-machine ssh myvm1 "docker swarm init --advertise-addr 192.168.99.100:2377"

于 2017-05-18T21:50:35.857 に答える
4

これは私のために働く

docker swarm init --advertise-addr 127.0.0.1

ここに画像の説明を入力

于 2020-03-27T02:42:41.017 に答える
1

docker --versionクライアントとサーバーが同じバージョンであることを確認してください。異なる場合は、次のコマンドを使用して、マシン上の docker クライアントと一致する boot2docker バージョンを取得します。

docker-machine create --driver virtualbox --virtualbox-boot2docker-url https://github.com/boot2docker/boot2docker/releases/download/v1.12.0-rc4/boot2docker-experimental.iso manager1

于 2016-07-27T21:51:46.500 に答える