dockerコンテナを起動・停止する

LINEで送る
Pocket

はじめに

docker01_logo

 

前回の記事では、「dockerのインストールから動作確認」までの手順について書いて行きましたが、今回はコンテナのイメージをダウンロードしてから起動や停止を行う手順について書いて行きたいと思います。

環境

  • OS:CentOS  7.3.1611 (Core)
  • Kernel:3.10.0-514.21.2.el7.x86_64
  • docker-ce:17.03.1.ce-1.el7.centos.x86_64

 

手順

イメージ確認

dockerのコンテナを起動するためには、イメージと言うファイルシステムが必要となります。

まずはこのイメージがホスト上にあるかを確認します。

# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE

何も表示されないので、ホスト上にイメージはないと言う事が確認出来ます。

 

イメージのダウンロード

イメージを、docker hubと言うコンテナ共有サービス上からダウンロードします。

今回は、「ubuntu」のイメージをダウンロードします。

# docker pull ubuntu
Using default tag: latest
latest: Pulling from library/ubuntu
75c416ea735c: Pull complete
c6ff40b6d658: Pull complete
a7050fc1f338: Pull complete
f0ffb5cf6ba9: Pull complete
be232718519c: Pull complete
Digest: sha256:a0ee7647e24c8494f1cf6b94f1a3cd127f423268293c25d924fbe18fd82db5a4
Status: Downloaded newer image for ubuntu:latest

最下行の「Downloaded newer image for ubuntu:latest」より、ubuntuのイメージがダウンロード出来た事を確認出来ました。

再度、ホスト上のイメージを確認すると、ubuntuのイメージがある事が分かります。

# docker images
REPOSITORY TAG    IMAGE ID     CREATED     SIZE
ubuntu     latest d355ed3537e9 2 weeks ago 119 MB

 

コンテナ作成

ダウンロードしたイメージを使用して、ubuntuのコンテナを起動します。

起動前に、現在ホスト上に存在するコンテナを確認します。

(-a : 停止中のコンテナも含めて表示するオプションです。)

# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

表示されないため、現在コンテナは存在しない事が確認出来ます。

 

それでは、コンテナを起動します。

# docker run -it ubuntu
root@b24bf0bf33c9:/#

ホスト名の表示が変わりました。

ログインしている環境のOSを確認します。

root@b24bf0bf33c9:/# cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.2 LTS"
root@b24bf0bf33c9:/#

ubuntuの表示である事から、ubuntuコンテナが起動し、ログインまで出来た事が確認出来ました。

 

コンテナから抜ける

コンテナから抜ける際に「exit」するとコンテナが停止してしまうので、以下を実行します。

ctrl を押しながら、「P」,「Q」の順に押下

root@b24bf0bf33c9:/#
#

プロンプロが戻りました。

再度コンテナの状態を確認します。

# docker ps
CONTAINER ID IMAGE   COMMAND    CREATED            STATUS PORTS  NAMES
b24bf0bf33c9 ubuntu "/bin/bash" About a minute ago Up 59 seconds heuristic_curie

「STATUS」が「Up」である事から、ubuntuコンテナが起動中である事が分かります。

起動中のコンテナに再度接続します。

# docker attach b24bf0bf33c9
root@b24bf0bf33c9:/#

ホスト名の表示が変わり、コンテナにログイン出来た事が確認出来ました。

 

それでは、コンテナを停止します。

root@b24bf0bf33c9:/# exit
exit
#

コンテナ状態を確認します。

# docker ps -a
CONTAINER ID IMAGE  COMMAND     CREATED       STATUS PORTS              NAMES
b24bf0bf33c9 ubuntu "/bin/bash" 3 minutes ago Exited (0) 52 seconds ago heuristic_curie

「STATUS」が「Exited」である事から、ubuntuコンテナが停止した事が分かります。

 

コンテナ起動

コンテナ作成時は「docker run」でコンテナ作成と起動をまとめて実行しました。

今度は、既に作成済であるコンテナを起動したいと思います。

# docker start b24bf0bf33c9
b24bf0bf33c9
#
# docker ps
CONTAINER ID IMAGE  COMMAND     CREATED       STATUS PORTS NAMES
b24bf0bf33c9 ubuntu "/bin/bash" 4 minutes ago Up 2 seconds heuristic_curie

「STATUS」が「Up」である事から、ubuntuコンテナが起動した事が分かります。

 

コンテナ停止

先ほどはコンテナにログインしている状態から「exit」でコンテナを停止しました。

今度は、ログインしていない状態から、コンテナを停止します。

# docker stop b24bf0bf33c9
b24bf0bf33c9
#
# docker ps -a
CONTAINER ID IMAGE  COMMAND     CREATED       STATUS PORTS             NAMES
b24bf0bf33c9 ubuntu "/bin/bash" 7 minutes ago Exited (0) 2 minutes ago heuristic_curie

「STATUS」が「Exited」である事から、ubuntuコンテナが停止した事が分かります。

 

ここまでで、コンテナの作成から、起動・停止の手順が確認出来ました。

続いては、コンテナを削除して、ダウンロードしたイメージも削除して行きたいと思います。

 

コンテナ削除

# docker rm b24bf0bf33c9
b24bf0bf33c9
#
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

コンテナの削除が確認出来ました。

 

イメージ削除

今度は、イメージを削除します。

# docker rmi ubuntu
Untagged: ubuntu:latest
Untagged: ubuntu@sha256:a0ee7647e24c8494f1cf6b94f1a3cd127f423268293c25d924fbe18fd82db5a4
Deleted: sha256:d355ed3537e94e76389fd78b77241eeba58a11b8faa501594bc82d723eb1c7f2
Deleted: sha256:dd864b96a38e849779c42a04159bbb39c7ab47253bf222049b471d8f26b60d14
Deleted: sha256:80e85c818fa0447c96a42501ca7457ad83e5834aa76f22c366342106889b7411
Deleted: sha256:11a2a269cf6ec2cefcb4e24370b8b2d7a4875450bafd3a70bd42eb787481d798
Deleted: sha256:1118f33a0ee7a874a04318248a886b2bdaf44cba286644ab7ded870aefe64b62
Deleted: sha256:cb11ba6054003d39da5c681006ea346e04fb3444086331176bf57255f149c670
#
# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
#

イメージの削除を確認出来ました。

コンテナを起動していると、そのコンテナを起動するのに使用したイメージは削除する事が出来ないので、注意してくだい。

 

まとめ

これで、コンテナの起動・停止やイメージのダウンロード・削除と基本的な手順は確認出来ました。

VMを作成した事がある方は、VMの作成から破棄までの手順や時間と比べると、手軽で手間も少ないと感じる事が出来たのではないでしょうか。

これがコンテナのメリットの一つではないかと思います。

 

次回以降では、もう一歩踏み込んで、ボリュームやポートをコンテナで使用する手順について書いて行きたいと思います。

LINEで送る
Pocket

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

one + 5 =