docker では、「Docker ps」コマンドを使用して、docker が正常に実行されているかどうかを検出できます。このコマンドは、コンテナーの一覧を表示するために使用されます。返された結果にコンテンツがあれば、実行されていることを意味します。返される結果には内容がありません。実行されていないことを意味します。構文は「 docker ps | grep myimagename」です。
このチュートリアルの動作環境: linux7.3 システム、docker-1.13.1 バージョン、Dell G3 コンピューター。
docker が正常に実行されているかどうかを確認する方法
docker ps: コンテナーのリスト
Syntax
docker ps [OPTIONS]
OPTIONS description:
#-a: 実行されていないコンテナを含むすべてのコンテナを表示します。
-f : 表示内容を条件に基づいてフィルタリングします。
--format: 戻り値のテンプレートファイルを指定します。
-l : 最近作成されたコンテナを表示します。
-n: 最近作成された n 個のコンテナを一覧表示します。
--no-trunc: 出力を切り捨てません。
-q: サイレント モード。コンテナ番号のみが表示されます。
-s: 合計ファイルサイズを表示します。
それらが実行されているかどうかを確認するにはどうすればよいですか?次のようにターミナルから docker ps を簡単に使用できます。
docker ps | grep myimagename
何かが返された場合、イメージは実行中です。空の文字列が返された場合、イメージは実行されていません。
ただし、これを処理するために subprocess.Popen を取得する方法がわかりません。パラメーター リストが必要なので、次のようなものは機能しません。
p = subprocess.Popen(['docker', 'ps', '|', 'grep', 'myimagename'], stdout=subprocess.PIPE) print p.stdout
は、「docker」を取得しようとしているため、機能しません。 ps" と make "docker" と "ps" コマンドになります(docker ではサポートされていません)。
Popen は最初の引数全体を実行可能ファイルとして実行しようとするため、完全なコマンドを与えることもできないようです。したがって、これは失敗します:
p = subprocess.Popen('docker ps | grep myimagename', stdout=subprocess.PIPE) print p.stdout
推奨される研究: docker ビデオ チュートリアル>>
以上がdockerが正常に動作しているか確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。