私は次の設定をしています:
- PostgreSQL
- そのためのフライウェイ
- 応用
それらを次のように連鎖させる必要があります。Flyway は DB が起動するのを待ち、App は Flyway が移行を完了するのを待ちます。
etcd
私はそれにいくつかのキーを投稿し、他のコンテナがそれらを待つために使用することを考えました。したがって、基本的に、各コンテナのエントリポイントは次のようになります。
#!/bin/bash
status=1
while $status != 0; do
for kv in $DEPENDENT_KEYS:
# curl to etcd, get the key
if $value == true then
status = 0;
else
status = 1;
fi;
done;
# container-related startup
# post to etcd that container is ready
# get back to _container-related startup_
私の質問は次のとおりです。
1) 私はそれを正しく行っていますか?
2) プロセスから切り離し、追加のユーティリティをあまりインストールせずにプロセスに再接続するにはどうすればよいですか (ベース イメージとして busybox/debian を使用すると仮定します)。
PS Supervisord について考えましたが、近いですが、そこでプロセスを待機させる (そしてそれらを連鎖させる) 方法がわかりません PPS すべてのセットアップは Docker Compose によって実行されることを意図しています。