GNU/Linux >> Linux の 問題 >  >> Linux

Dockerコンテナを終了する方法

Dockerコンテナをどのように終了しますか?

次のようなインタラクティブモードでDockerコンテナを実行するとします。

docker run -it ubuntu bash

このようにして、インタラクティブシェルを取得し、コンテナとして実行されているOSにすぐにログインします。

この実行中のコンテナーを終了するには、ctrl + c、ctrl + dを使用するか、ターミナルでexitと入力します。

ここに1つの問題があります。この方法でコンテナを終了すると、コンテナも停止します。

[email protected]:~$ docker run -it ubuntu bash
[email protected]:/# ls  
bin   dev  home  lib64  mnt  proc  run   srv  tmp  var
boot  etc  lib   media  opt  root  sbin  sys  usr
[email protected]:/# exit
exit
[email protected]:~$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

上記の出力でわかるように、dockerpsコマンドは実行中のコンテナーを表示しません。

Dockerコンテナーを停止せずに終了します(コンテナーをデタッチします)

ここでできることは、 ctrl+pとctrl+qを次々に押してコンテナを切り離すことです 。 Linuxユーザーにとっては奇妙なキーボードショートカットだと思いますが、それが簡単な方法です。

切り離すと、コンテナを終了してもコンテナは実行を継続します。これで、インタラクティブDockerセッションはデーモンモードになります。

docker psを使用して確認できます 実行中のコンテナリストに表示するコマンド。

もう一度使いたいときは、容器を付け直してください。

ヒント:可能な限り、コンテナーをデーモンモードで実行します

私は常に次のようにデーモンモードでコンテナを実行することを好みます:

docker run -it -d docker_image_name bash

このようにして、コンテナが起動し、バックグラウンドで実行されます。 iフラグはインタラクティブを意味し、tフラグはttyを表します。つまり、基本的には、bashを実行するインタラクティブなシェルを提供しますが、すぐには利用できません。

実行中のコンテナは次の方法で入力できます:

docker exec -it container_id bash

この簡単なDockerのヒントがお役に立てば幸いです。より多くのDockerのヒントをお楽しみに。

ご質問やご提案がございましたら、コメント欄でお気軽にお問い合わせください。


Linux
  1. DockerコンテナでMySQLを実行する方法

  2. DockerコンテナにSSHで接続する方法

  3. DockerコンテナにVimをインストールする方法

  1. Dockerを使用してWordPressをインストールする方法

  2. Dockerコンテナに静的IPを割り当てる方法

  3. Dockerコンテナを一覧表示する方法

  1. DockerコンテナにPostgreSQLをデプロイする方法

  2. DockerをDebian9にインストールする方法(Stretch)

  3. exit を使用した後に docker alpine コンテナを保持するにはどうすればよいですか?