Dockerとは
Dockerとは一言でまとめると・・・
Docker社が開発したコンテナを用いた仮想環境を作成・配布・実行するためのプラットフォーム
コンテナとは・・・
コンテナとはホストOS(WindowsやMacなど)上で動作する仮想環境のこと
従来の仮想環境ではホストOS上に仮想環境ごとにゲストOSを作成していました。しかし、何個もゲストOSを作ってしまう(仮想環境を構築してしまう)とPCの能力をたくさん使ってしまうため、ゲストOSを作らないで仮想環境を構築する技術であるコンテナが誕生しました。つまり、従来の仮想環境はホストOS上にゲストOSを作り作業をしていましたが、コンテナという箱を作ることで負担を少なくして作業ができるようになったわけです。
つまり、Dockerとは
Dockerというのは、より負担の少ない方法で仮想環境を構築できるような環境を提供しているわけですね。
利点
仮想環境を箱に入れているため、コンテナを丸ごとコピーして他サーバに持ち出すことが可能です。さらに、従来はゲストOSというOSを毎回作らなくてはいけないため、コストもかかりますが、コンテナではホストOSと独立しているため、毎回OSを作らなくてはよくなりますので、低コストです。
実際にDockerをいじってみる
Dockerをインストールするところから実施します。下記URLからexeファイルをダウンロードし、クリック後指示に従ってインストールします。インストールが完了したら、勝手に再起動します。起動したらコマンドプロンプトで「docker version」を入力し、エンターキーを押下してください。バージョンが表示されましたら、dockerのインストールが完了です。
Dockerコマンド
docker ps
上記のコマンドで動作しているコンテナの確認ができます。
docker ps -a
また、上記のように「-a」というオプションを追加すれば停止中のコンテナも一覧に出てきます。
※私の場合、インストールしたばかりでしたので、表示されませんでした。
docker images
上記のコマンドで取得済みのイメージの一覧を表示させることができます。ちなみに、イメージとはコンテナを動作させるために使うテンプレートファイルのことです。
docker pull [Image名]
上記でイメージをローカルに取得することができます。
Dockerを実際に動かしてみる
Dockerの作成・実行
docker run hello-world
上記のコマンドで下記の3つの手順が完了しました。
- hello-worldのDockerイメージの取得
- 取得したイメージを元にコンテナの作成
- 作成されたコンテナの起動
上記のコマンドについて少し深堀りします。
- コンテナはイメージから作られます。しかし、イメージがダウンロードされていないとコンテナを作成することができません。そのため、まずはイメージをダウンロードする必要があります。最初に「docker images」コマンドを実行したら一覧表示されませんでした。これは、ローカルにイメージがないためです。その状態で「docker run hello-world」を実行したことによって、Docker Hubからイメージの取得を行います。試しに再度「docker images」コマンドを実行してみたら、一覧に表示されました。
- 先ほどのコマンドでイメージからコンテナを作成することができました。そのため、コンテナの一覧を確認するとコンテナの存在を確認することができます。
※この時「docker ps」コマンドでは一覧に表示されないと思います。なぜなら、hello-worldのコンテナは起動後、一連の処理を実行すると停止してしまうコンテナだからです。そのため、「docker ps -a」コマンドを実行するとコンテナを確認することができます。
Dockerの削除方法
docker rm [コンテナID]
上記のコマンドでコンテナを削除できます。コンテナIDは「docker ps」コマンドで一覧表示した中のカラム名が「CONTAINER ID」の要素を指定してください。
docker rmi [イメージID]
上記のコマンドでイメージを削除できます。イメージIDは「docker images」コマンドで一覧表示した中のカラム名が「IMAGE ID」の要素を指定してください。
参考資料