なぜしらべたのか
・VirtualBoxを使っているのでこれじゃダメなの?と純粋に思ったから。
laravelでmysqlの認証エラーにつまずいてしまい、
前はVirtualBoxでしていたのに、
ローカルでやろうとしているからじゃね?ってなりました。
どうせならDockerでやってみようと思います。
VirtualBoxと何が違うの?
・リソース(メモリ、CPUなど)を節約できる。
・軽くて早い。
どちらも仮想環境を構築するためのツールというのは同じ。
VirtualBoxは「ハイパーバイザ型」と呼ばれ、
ホストosの土台の上でゲストosを起動させるイメージ。
1つの本体の中で2つのマシンを同時に動かすようなものなので、
元々のスペックを半分こしあいます。
(純粋に元のメモリが8GBなら4GBずつ、みたいな?)
これに対してDockerは「コンテナ型」と呼ばれ、
ホストosを共有することでリソースを節約できます。
確かにpcに負荷をあまりかけなくていいのはありがたいですね。
あとは、開発環境の共有が容易(らしいです。あいまいですみません。。)
複数人で開発をする際、Vagrantなら参加するメンバー全員が
それぞれ環境構築をする必要がありますが、共通のDockerImageをさせば
まったく同じ環境を共有できます。
メンバーが増えるほど開発環境の統一はハードルが上がると考えられるので、
これはメリットが大きいですね。
おわり
全体的にふわっとしているかもしれませんが
違いが少しは落とし込めました。
あとは実際に使ってみたいと思うので、そのうちに理解度が増すはず。
構築ができたらそちらもまとめます。