異なるバックエンドサービスに接続されている1 ... N個のアプリケーションコンテナを持つ設定があります。 docker-compose.yml
は次のようになります。ドッカー作成スケールの開始依存関係を作成するには?
services:
backend1:
...
backend2:
...
application:
...
depends_on:
backend1:
condition: service_healthy
backend2:
condition: service_healthy
docker-compose scale SERVICE=INSTANCES
結果とアプリケーションの複数のインスタンスを起動明らかにこれ
$ docker-compose scale application=2
Creating and starting application_1 ... done
Creating and starting application_2 ... done
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f4e274552239 application_image ... 4 minutes ago Up 4 minutes (unhealthy) application_1
39f28173087c application_image ... 4 minutes ago Up 4 minutes (unhealthy) application_2
で、依存関係が開始されていません。サービスの単一のインスタンスがdocker-compose up application
で代わりに起動すると、依存関係が正しく開始されています
$ docker-compose up -d application
Creating backend1_1
Creating backend2_1
Creating application_1
その後、第2のインスタンスは、ドッキングウィンドウscale
を追加することができます。
$ docker-compose scale application=2
Creating and starting application_2 ... done
これが正常に動作します。しかし、docker-compose scale
も依存関係を開始させる何らかの方法はありますか?そうでない場合、その行動の背後にある根拠は何でしょうか?
編集のために感謝しています。@jotrocken、レイジータイピング:-) – mickadoo