>>463
docker を手元で使う多くのアプリ屋としては docker は便利なんだけど
本番の運用として使うインフラ屋としては docker は便利すぎて面倒なんだよね。
docker は「1 から10のうち 1から9 までやってくれる」けど、
私達の欲しいのは「8から10」なんですという場合にdocker を使うのかって話。

自分としては"本番で使うなら" docker の差分ファイルシステムは必要ないし、
docker daemon が提供する REST API も必要ない、Network も iptables とか触ってほしくないし
Host と一緒でいいから Network plugin もいらない。
でも、docker で出来たイメージ(というか今なら OCI フォーマット)や Dockerfile を
アプリ屋と共通の言語として使いたい。

これらはdrootを作った"はてな"やペパボあたりの今までオンプレで運用してたところは
同じように不満を持つんじゃないかなと思う。
オンプレだとクラウドのように動的にサーバを追加したリしないので Mesos のようなスケジューラに
依存せず自分たちで割当固定したほうが扱いやすいしね。
(docker が 1 から 10 までできるようになってもこの辺のツールを作ってる会社は変わらないと思う)

その結果 droot やら haconiwa やら apr などオリジナルコンテナエンジンを作ろうかなとなるだけ。
droot は他の会社が使うものじゃない。あれははてなが必要だから作ったものだし。
ただ似たようなものを作る会社は今後出てくると思う。

または、うちの会社みたいに machinectl(systemd-nspawn)つかったり、 CoreOS の rkt や
OCI の runc を直接使う会社も出てくると思う。
どっちの場合でも共通言語は Dockerfile で、細かな仕様は runc の SPEC.md あたりを参考にしてね。

docker とオリジナルツールについて知識が必要なのはそのとおりだけど、結局コアの技術は今のところ
コンテナ(Namespaces/Capabilities/cgroup)+差分FSなのでオリジナルツールは docker を理解する方法として
デメリットには感じないね。