
今知ってることを書いていく〜。
Dockerにできること
Dockerが何かを知るには、Dockerを使うことで得られるメリットを把握するところからスタートするのがいいと思います。
- ローカルマシンの影響を受けずに、アプリケーションの開発・実行環境を整えられる(これを仮想化という)
- 生成したDocker環境をコード化して配布できる
- よって、開発メンバーごとに異なるローカル環境に影響されず、スピーディに開発環境を統一できる
つまり、Dockerはアプリケーションの開発環境構築に一役買うツールというわけです。ちなみに「仮想化」という概念は決して新しものではなく、同じ概念のツールとしては「仮想マシン」があります。VirturalBoxなどが有名ですね。(知らなければ無視してください。)
Dockerと仮想マシンの違い
仮想空間を作成して、擬似的にローカルとは異なる環境を整える(あたかも違うマシンが動いているように見える)という点では同じです。
しかしながら、アプリ開発のしやすさという点ではDockerに軍配が上がるらしいです。(というか、既存仮想化技術の問題点を解決するために作られたんだと思う)
- 仮想マシンは1つの仮想空間を作るために、毎回ゲストOSをインストールする必要がある
- その分ディスク使用量が大きくなる、仮想環境作成・起動に時間がかかる
一方Dockerは
- 複数のOSは必要とせず、一つのホストOS上でいくつもの仮想空間を実現できる
- 厳密にいうと、OSの上に設置したDocker Engineが複数のアプリケーションを仮想化/管理する
あと、下記画像のオレンジで囲まれた部分を「コンテナ」ていうらしいです。「コンテナを作成する」とかって、よく聞きます。
Dockerのいいところ
結局は使ってみなきゃ分からないと思います。頭で理解するだけじゃなくて、体感して初めて「うんうんなるほど」ってなる。
Dockerを使ってみよう
難しいこと言わないんで、とりあえず手を動かしながら「Dockerインストール」から「アプリ立ち上げ」までやってみてください。
- Dockerのインストール
- ファdふぁ
1. Dockerのインストール
いずれ解説したいと思ってますが、とりあえず下記を参考にどうぞ。
DockerをHomebrewでMac OSに導入する方法|Qiita
2. ファdファ
ちょと待っててね、、、、