Dockerの超基本操作【イメージ取得~コンテナの削除】

Docker を初めて学ぶ人のために、Docker の超基本操作をまとめました。

イメージ取得からコンテナの作成・起動・停止・削除まで。これだけ押さえておけばとりあえずDocker を操作することができます。

しょうゆ
しょうゆ

あくまでも超基本的なコマンドだけをピックアップしてるぞ!😇

Dockerイメージの取得 [ $ docker pull ]

 
$ docker pull イメージ名 : イメージのタグ
 

イメージ名は「Docker Hub」で検索すればわかります。また docker pull コマンドはDocker Hubイメージの詳細ページからコピーすることもできます。

※今回はNode.jsの実行環境を構築する例です。

node イメージの詳細ページ

イメージ名にはタグを指定することもできます。タグは、Dockerイメージの制作者がつけた分類名で、バージョン管理などに使われます。タグは、Docker Hub の詳細ページの「Tags」タブで確認できます。

タグ名を指定するときは、半角コロン(:)で区切ります。また、タグのついた docker pull コマンドも詳細ページからコピーすることができます。

nodeイメージのタグ一覧

なお、イメージのタグが入力されていない場合は、自動的に[ latest ]タグとなります。 [ latest ] タグは最新バージョンという意味を持っています。

Dockerコンテナの作成[ $ docker create ]

 
$ docker create オプション イメージ名
 

イメージからコンテナを作成します。コンテナの作成には複数のオプションが使われることが多いので主要なオプションを押さえておきましょう。

オプション

オプションは種類がたくさんありますが、ここでは最低限のオプションのみ紹介します。

-name

 
$docer create -name コンテナ名 …
 

コンテナの名前を付けるオプションです。nameオプションを指名しないと自動的にコンテナの名前を付けられてしまうので、管理がしやすいように必ずつけるようにしましょう。

-p

 
$ docker create -p ホストのポート番号 : コンテナのポート番号…
 

ポート番号を指定するオプションです。ホストのポート番号とコンテナのポート番号を半角コロン(:)で区切ります。

-v

  
$ docker create -v ホストのディレクトリ : コンテナのディレクトリ
 

コンテナの特定のディレクトリに、ホストディレクトリをマウントするオプションです。マウントとは「乗っかる」という意味で、コンテナの特定のディレクトリに、ホストディレクトリを乗っけるという意味になります。

要するに、ホストディレクトリの中身がコンテナの特定のディレクトリが同期したような挙動になります。

ホストディレクトリのカレントディレクトリは「”$PWD”」と記載します。ホストディレクトリのカレントディレクトリをコンテナの「/usr/src/app」ディレクトリにマウントするときの記載は以下の通りです。

記載例

 
$ docker create -v "$PWD":/usr/src/app ...
 
しょうゆ
しょうゆ

ディレクトリについてはいつかLinux で解説したいです🤤(予定)

Dockerコンテナの起動[ $ docker start ]

 
$ docker start コンテナ名
 

docker create は、コンテナを作成するだけで、動作はしていません。docker start コマンドを入力することでコンテナを起動できます。

イメージ取得~コンテナ起動を一気に行う

 
$ docker run オプション イメージ名
 

docker pull ⇒ docker create ⇒ docker start を一気に行うコマンドです。

しかし、すでにイメージが取得されている場合は docker pull を実行しません。

しょうゆ
しょうゆ

イメージを取得してコンテナを作成したら通常はそのまま起動するので、docker run を使うことがほとんどやぞ!

Docker コンテナの停止[ $ docker stop ]

 
$ docker stop コンテナ名
 

docker start や docker run で起動したコンテナを停止します。

コンテナが暴走していると、docker stop コマンドが効かないことがあります。その場合は docker kill コマンドを使うことで強制終了できます。

コンテナを削除する[ $ docker rm ]

 
$ docker rm コンテナ名
 

停止しているコンテナを削除します。コンテナが起動している時は削除できません。

コンテナは停止していてもメモリを非常に多く消費するので、使わなくなったコンテナはこまめに削除するようにしましょう。

しょうゆ
しょうゆ

rm は remove(削除する)の略で、Linux でも同じコマンドが使われているぞ!🤤

まとめ

Docker の基本的な操作をまとめます。

  • イメージを取得する $ docker pull イメージ名
  • コンテナを作成する $ docker create オプション イメージ名
  • コンテナを起動する $ docker start コンテナ名
    • ↑3つを一気に実行 $ docker run オプション イメージ名
  • コンテナを停止する $ docker stop コンテナ名
  • コンテナを削除する $ docker rm コンテナ名

作成者: しょうゆ

独学でプログラミング学びたい人向けへ情報発信をしています! …というのは建前で、学んだことをまとめています。 独学で分かりにくかった部分を分かりやすく発信したいです。