>>120
> 結局Dockerは何が魅力なんや?

配布

WindowsのDLL Hellの話知ってるか?
昔、Windowsで大問題になってな

アプリをインストールするときに、一緒にDLLもインストールするんだが
当時はアプリにシステムDLLが含まれていたりして、
インストールするとOSのDLLを書き換えて、他のアプリが動かなくなったりした。

今ではそれが改善されて、アプリはシステムDLLを書き換えない、
必要ならアプリのディレクトリにDLLを入れたり、
.NETなんか複数のバージョンをインストールできて適切なものを使えるようになってる。

Linuxでもそれは同じでな。ディストロのパッケージだけ使ってるなら別に問題ないんだよ。
そのバージョンで動くように頑張ってるのがディストロの仕事だから

でもな、俺ら(開発者)がなにか作る時、ディストロのパッケージのバージョンを
色々考慮しないといけなくなる。ディストロアップデートしたら、そのパッケージで動くか検証したり
パッケージの新しいバージョンを使う時、それが今のディストロでちゃんと動くのか検証しなくちゃいけない。

それはつらいだろ?だからもうアプリに全部含めちゃいましょう。
というのがDockerなんだよ。(互換性が超高くて小さいカーネル以外)全部アプリに含めてるから
あちこちに簡単に移動できたり、バージョンアップできたりするんだよ。

ここまで言えば分かる通り、開発者以外にとっては関係ない道具
ディストロのパッケージ使ってるだけのやつとか、仮想マシンと勘違いしてるやつにはようはないから