web-dev-qa-db-ja.com

Dockerサービスのレプリカは0/1のままです

Macで1.12のdocker swarmを試しています。 3つのVirtualBox VMを起動し、3つのスウォームクラスターを作成しました。

docker@redis1:~$ docker node ls 
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
2h1m8equ5w5beetbq3go56ebl    redis3  Ready Active 
8xubu8g7pzjvo34qdtqxeqjlj    redis2  Ready Active Reachable 
cbi0lyekxmp0o09j5hx48u7vm *  redis1  Ready Active Leader

ただし、サービスを作成すると、エラーは表示されませんが、レプリカには常に0/1が表示されます。

docker@redis1:~$ docker service create --replicas 1 --name hello ubuntu:latest /bin/bash
76kvrcvnz6kdhsmzmug6jgnjv
docker@redis1:~$ docker service ls
ID            NAME   REPLICAS  IMAGE          COMMAND
76kvrcvnz6kd  hello  0/1       ubuntu:latest  /bin/bash
docker@redis1:~$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

何が問題なのでしょうか?ログはどこで探しますか?ありがとう!

21
Samar

問題は、何もしていないため、タスク(bin/bashを呼び出す)がすぐに終了することです。

サービスのタスクを見ると、タスクが開始され、数秒以内にシャットダウンされることがわかります。 1つのタスクを常に実行するように要求されているため、別のタスクが開始、シャットダウンなどされます。

docker service ps hello

たとえばubuntu:latest topを使用すると、タスクは実行されたままになります。

31
Bernard

これは、存在しないローカルディレクトリにバインドされている作成ファイルでボリュームを指定した場合にも発生する可能性があります。

2
Jim Hunziker