Docker コンテナをバックグラウンドで実行する (分離モード)
Docker では、イメージ開発者は、分離またはフォアグラウンドでの実行に関連するイメージのデフォルト、およびその他の便利な設定を定義できます。ただし、docker run [OPTIONS] コマンドを使用すると、開発者が設定したイメージのデフォルトを追加または上書きできるため、コンテナの実行方法をより詳細に制御できるようになります。
こちらもお読みください: ctop – Docker コンテナを監視するための Top のようなインターフェイス
この記事では、 コンテナーを実行するフォアグラウンド モードとバックグラウンド モードについて簡単に説明し、 またDocker コンテナーを実行する方法についても説明します。 > バックグラウンドで分離モードで動作します。
フォアグラウンド モード (デフォルト) とバックグラウンド/分離モード
Docker コンテナを開始する前に、まずデフォルトのフォアグラウンド モードで実行するか、 バックグラウンドのデタッチ モードで実行するかを決定する必要があります。 です。
フォアグラウンド モードでは、Docker はコンテナ内でプロセスを開始し、コンソールをプロセスの標準入力、標準出力、標準エラーに接続できます。
プロセスに疑似 tty を割り当てる -t
や、プロセスに疑似 tty を割り当てる -i
など、さらに設定するためのコマンド ライン オプションもあります。接続されていない場合でもSTDINは開きます。また、-a=[ここの値]
フラグ。
重要なのは、--rm オプション
は、コンテナの終了時にコンテナを自動的に削除するようにDocker に指示することです。この例は、Docker コンテナをフォアグラウンド モードで起動する方法を示しています。
# docker run --rm -ti -p 8000:80 -p 8443:443 --name pandorafms pandorafms/pandorafms:latest
コンテナをフォアグラウンドで実行するデメリットは、上のスクリーンショットからわかるように、コマンド プロンプトにアクセスできなくなることです。つまり、コンテナーの実行中は他のコマンドを実行できません。
Docker コンテナをバックグラウンドで実行するには、-d=true
オプションを使用するか、単に -d
オプションを使用します。まず、[Ctrl+C]
を押してフォアグラウンド モードから停止し、次に示すようにデタッチ モードで実行します。
docker run -d --rm -p 8000:80 -p 8443:443 --name pandorafms pandorafms/pandorafms:latest
すべてのコンテナを一覧表示するには、次のコマンドを実行します (デフォルトでは実行中のみが表示されます)。
# docker ps -a
さらに、切り離されたコンテナに再接続するには、dockerattach コマンドを使用します。
# docker attach --name pandorafms
OR
docker attach 301aef99c1f3
上記のコンテナまたは実行中の他のコンテナを停止する場合は、次のコマンドを使用します (301aef99c1f3 を実際のコンテナ ID に置き換えます)。
# docker stop 301aef99c1f3
以下の関連する Docker 記事もお読みください。
- Docker をインストールし、CentOS および RHEL 7/6 での基本的なコンテナ操作を学ぶ – パート 1
- Docker コンテナに名前を付けるまたは名前を変更する方法
- Docker イメージ、コンテナー、ボリュームを削除する方法
それでおしまい!この記事では、デタッチ モードでバックグラウンドで Docker コンテナを実行する方法を説明しました。この記事に関するフィードバックや質問がある場合は、以下のコメント フォームを使用してください。