Dockerイメージを起動する(詳細)

hello-worldイメージを起動します。次のコマンドのみで起動することができる

> docker run hello-world

起動しようとすると、まずはイメージがローカルに存在するか確認します。

ローカルにイメージが無ければ、Docker Hubにイメージがあるか確認しにいきます。Docker Hubにイメージがあれば、pullしてダウンロードします。ダウンロードしたイメージからローカルにコンテナを作成します。

イメージ取得

docker pull

コンテナ作成

docker create

コンテナ起動

docker start

ローカル上にあるdockerイメージの一覧を表示する、

> docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest fce289e99eb9 15 months ago 1.84kB

REPOSITORYでイメージ名が記載されている。ここはtag名として名前を記載することもできる。
記載したときにIMAGE IDはh根攻されない。つまり同一のイメージ

詳細情報を表示する。

docker inspect

Docker-Hub上のイメージの使用法ほうはrepo-infoに記載されている。


Docker-Hub上のイメージ

Hello-world - Official Image | Docker Hub
Hello World! (an example of minimal Dockerization)

使用方法

repo-info/repos/hello-world at master · docker-library/repo-info
Extended information (especially license and layer details) about the published Official Images - repo-info/repos/hello-world at master · docker-library/repo-in...

-d
デタッチモード?Webサーバー起動には必要らしい。
コマンドと命令した処理が同期になってしまうので、Webサーバー起動とかを命令すると、Webサーバー起動しているときはコマンドが終了しないということか。
これはデタッチが必要だな。

-p ホストのポート番号:コンテナのポート番号

違うポート番号で起動する。
・ホストのポート番号←Windows側のポート番号
・コンテナのポート番号←Docker側のポート番号

Webブラウザからはホストのポート番号を指定してアクセスする。
すると、ホストから内部的にコンテナが呼ばれる(もちろんポート番号を内部的に指定している)。