Dockerコンテナに別のコンテナを再起動するコマンドを実行させる方法

Dockerコンテナに別のコンテナを再起動するコマンドを実行させる方法

fastAPI Dockerコンテナを作成し、1つのコマンドを除いてうまく動作します...
いくつかのイベントが発生したときに他のDockerコンテナを再起動する必要があります。

dockerを実行するサーバー[ホスト]があり、dockerはコンテナA(fastAPI)およびコンテナBを実行しています。
ホストにこのコマンドを実行させるコマンドをコンテナAで実行させるにはどうすればよいですか?

ドッカー再起動コンテナB

ホストオペレーティングシステムはLinuxです。

私はPythonのsubprocess.run()を使ってみましたが、もちろんうまくいきません。 ContainerA には docker がインストールされていないため、docker コマンドはありません。
Unixソケットのインストールが機能するという記事を読んで、 '/var/run/docker.sock:/var/run/docker.sock'をインストールしようとしましたが、うまくいきませんでした。

どのように動作するかを知っていただきありがとうございます。
ありがとうございます。

ベストアンサー1

/var/run/docker.sock快適さを感じる限り、一般的なアプローチはコンテナ内に設置することです。ホストのDockerデーモンをコンテナに公開する。これを行うには、コンテナ内でDockerクライアントバイナリ()を使用できることも確認する必要があります。dockerそうでない場合は、それを画像に追加する必要があります。

おすすめ記事