【はじめて】Dockerインストール手順【Hellow World】

どうも、ナオキチです。
今回は、Pythonの開発環境の構築する上で使用する予定のDockerのインストール方法とHellow World の出力までを学習メモとして残していきます。

そもそもDocker って何?

Docker(ドッカー)とは、Dockerコンテナはアプリケーション開発環境に利用可能なDocker Inc.によって開発されたコンテナ仮想化ツールのことを指します。
アプリ操作をコンテナに分割しての実行や、別のOS上にコンテナを移して動作するようにも働きます。

Docker社ホームページ

スクリーンショット 2020-02-29 22.28.04

Docker を使用するメリットって何?

コンテナ型仮想化という技術を使用しています。
仮想マシンといえば、私も実務経験のあるVmware や Virtual Box などが昔から馴染みのある製品ですが、Docker については割と歴史が浅いです。
ゲストOSを必要としないため非常に軽量なのです。
また、オープンソースソフトウェアのため無料でその機能を利用できるのも魅力の一つではないでしょうか。
動作に必要な物がDockerイメージにまとまっているため、Dockerがインストールされている環境なら同じように動作します。
これにより開発環境と本番環境の違いを気にすることなく開発に集中できます。

インストール方法

今回のインストール環境は、Mac OSを使用した手順となっていますので
Windowsご利用の方は適宜読み替えをお願いします。

①Docker 会員登録

下記サイトより会員登録します。無料となりますが、登録が必要のようです。
ここでのポイントは、Docker ID が後ほど自分のリポジトリネームとなりますのでご留意ください。噂によると、変更する場合は少し手間のようです。
https://www.docker.com

スクリーンショット_2020-02-29_19_37_08

②Docker ダウンロード

①で登録完了後に、下記の画面が表示されるので真ん中のボタンをクリックし、ダウンロードをします。

スクリーンショット_2020-02-29_19_41_18-2

③Docker インストール

ダウンロードしたファイルを開くと、下記の画面になりますので順番に従って操作をしていきます。基本的に表示通りに進めばOKです。

スクリーンショット 2020-02-29 19.41.34

最終的に、以下の画面に遷移すれば順調に作業が進んでいます。
Docker アイコンを右のフォルダアイコンに放り込みます。

スクリーンショット 2020-02-29 19.44.56

④Docker起動

Docker アイコンを起動します。

スクリーンショット 2020-02-29 23.18.53

⑤Docker画面表示

Docker アイコンをクリックすると、以下の画面になるはずです。

スクリーンショット_2020-02-29_19_49_46

⑥Docker のバージョン確認

% docker -v
Docker version 19.03.5, build 633a0ea

Dockerがうまく起動できれば、バージョンが表示されます。

⑦Hellow World 実行

ちなみに、コンテナとはアプリやインフラなどを入れた箱であり、イメージ(今回は、hello-world)とはコンテナを実行するために必要なファイルシステムのことです。基本的には、イメージを用いてコンテナを作成します。
(逆に、コンテナからイメージを更新することも可能とのことですが、
基本的にはイメージ→コンテナの流れが基本のようです。)

% docker run hello-world

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
   (amd64)
3. The Docker daemon created a new container from that image which runs the
   executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
   to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/

For more examples and ideas, visit:
https://docs.docker.com/get-started/

hello-worldを実行することができました。
説明文も記載されているので長めのメッセージが出力されるんですね。

⑧起動中のコンテナ確認

-a オプションは、停止中のコンテナの表示を意味します。

% docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
99d743b95412        hello-world         "/hello"            28 seconds ago      Exited (0) 27 seconds ago                       priceless_tereshkova

⑨後片付け

上記の結果により、Hello-Worldイメージとコンテナを確認できたかと思います。
最後にこれらを削除して後片付けして終わりとします。

・コンテナの削除コマンド

docker rm [CONTAINER ID]

・イメージの削除コマンド

docker rmi [IMAGE]
% docker rm f498caea1d62
f498caea1d62
% docker rmi hello-world
Untagged: hello-world:latest
Untagged: hello-world@sha256:fc6a51919cfeb2e6763f62b6d9e8815acbf7cd2e476ea353743570610737b752
Deleted: sha256:fce289e99eb9bca977dae136fbe2a82b6b7d4c372474c9235adc1741675f587e
Deleted: sha256:af0b15c8625bb1938f1d7b17081031f649fd14e6b233688eea3c5483994a66a3

便利なサイト紹介(日本語のコミュニティ)

以下のサイトは、Docker に関する情報が日本語でまとめられているため、
今回非常に参考になりましたので紹介します。
URL:http://docs.docker.jp/index.html#

スクリーンショット 2020-02-29 22.37.53

まとめ

以上、Docker のインストール方法からHellow-Worldの出力までを実践してみました。
意外と、本筋とは違うところですが、Macのターミナルの操作の箇所で手こずってしまいました。色々勉強になりました。
しかしながら、やっと土俵に立てただけですので、これから徐々に使いこなしていければと思います。

この記事が気に入ったらサポートをしてみませんか?