みなさん、お疲れ様です。kouです。
Docker を使えるように勉強して、触れていこう、
Dockerへの道、第二回です。よろしくお願いします!
〇イメージとコンテナとは
それでは、早速Dockerイメージとコンテナについて調べてみました。
こんなことが分かりました。まず、イメージについて。
- コンテナ実行に必要な設定情報をまとめたもの。
- コンテナを作成するために、使用するテンプレートのようなもの。
例えば、あるOSの上にあるアプリケーションが実行できる、
もしくは複数のアプリケーションを実行する環境(コンテナ)を作るとき、
それぞれの設定情報をまとめて書いたものがDockerイメージのようです。
では、コンテナとは何か調べてみました。
- Dockerイメージを具現化したもの。
- アプリケーションを実行するのに、OSが要らない。
↑の2つめのOSが要らないというのはどういうことかというと、
複数のサーバを構築する時って、ホストOS上にアプリケーションの分だけ仮想マシン作って、OSをインストールして構築しますよね?
つまり、サーバの数だけOSが必要だと思います。
(当然、一つのOS上に複数のサーバを構築することもあると思いますが)
でも、Dockerの場合はOSが不要で、ホストOS上にコンテナという単位でアプリケーションを作ることができます。
だからOSを入れない分、起動も速かったり、リソースも軽量で済むみたいです。
細かい仕組みなどはかなり省略していますが、一気に理解できないのでこのくらいで笑
〇 コンテナを起動してみる
ではやっと、実際にイメージをダウンロードして、コンテナを実行してみます。
ここでは、Docker Hubのページからサンプルのようなコンテナを使ってみます。
Docker Hubは、Docker社が提供していて、イメージを管理・公開することができるようです。
Docker Quickstart Terminal を起動して、
以下のコマンドを実行してみてください。
すると、こんな画面になります。
クジラが描かれていて、< boo >と言葉を発しています。
このサンプルのコマンドの説明です。
“docker run” は、複数のコマンドをまとめていて、Docker イメージの取得からコンテナの作成、起動まで行っています。
細かくイメージのダウンロードだけのコマンドも用意されています。
“docker/whalesay” にてDockerイメージをダウンロードしてコンテナを起動するものを指定しています。
最後の”cowsay boo” で、起動したコンテナで実行するコマンドを指定しています。
ですので、”boo” の部分を違う言葉に変えると、実行結果もその言葉になります。
今回はあらかじめ用意されたDockerイメージを使用しました。
この部分を自分で作っておくことで、いつでも必要なときにまったく同じ環境を用意することができます。すごく便利ですよね!
毎回、自分でイチからサーバとかを構築するのは時間も労力もかかるし、まったく同じ環境ができない可能性もあります。
そういったことを解消しているのが、Dockerの強みでもありますね。
今回は以上です!次回以降ではどんどんサーバを作っていったりして勉強していきたいと思います!
最後まで読んでくださった方、ありがとうございます。
また、次回もよろしくお願いします。
コメント