質問: Dockerについて勉強してみました。 会社などチーム開発ではとても重要な知識だなあと思い感動したのですが、 個人開発でも実際に使っている人は多いのでしょうか? 普段はXAMPPでPHPなどを利用してアプリケーションを制作しているのですが、 個人開発で困ることは特にありませんし、一応動作が不安な時にはVagrantなど使用するようにしています。 個人開発で長期的に運用したりするよって考えるときには使うって感じなのでしょうか。 データベースとかアプリサーバでコンテナを分けるというのは分かりますが、個人開発においてはちょっと面倒くさいような気もします。 よろしくお願いします。
回答: 個人開発で使っています。また個人のサーバーはDocker化しました。 > > 個人開発でも実際に使っている人は多いのでしょうか? > > > ネットニュースではDockerに関する記事は多いですが、統計データがあるわけでもないので明言はできませんが実際に使っている人は少ない方ではないでしょうか。(これから増える??) 個人開発環境でXAMPPで事足りるならば無理してDockerを使用するには学習コストが高すぎるのでお勧めはしないですね。 Dockerを使う前提としてLinuxの構築ができないとDockerfileを作れませんし、Dockerfileの記載方法やdocker-composeの使用方法、データの永続化、コンテナログの収集など学習コストが高く感じていますし、私自身まだまだ勉強中です。 いくつかDockerfileを作っていくと、以前作成したDockerfileの流用ができたり、環境変数化したりしてDockerfileの作成効率が上がっていきます。躓くところは躓きますけどね。 チーム開発ならばDockerfileを作成できる人が最低1人いれば良いので、その他の人は基本的なDockerコマンドのみ知っていれば問題ないかもしれないですね。 > > 個人開発で長期的に運用したりするよって考えるときには使うって感じなのでしょうか。 > > > 開発から実運用を含めたならば同じ環境になるのとバックアップ・リストアなどの作業が躊躇なくできるのは良いと感じました。 また、Dockerfileが全てなので、後々バージョンの確認などサーバを覗かずに確認もできます。 実機/VM/クラウドVPSなどで構築した場合、サーバー構築手順書などを作成しても実際に動いているものが違ったなどヒューマンエラーなどが起こったりしますし(実話...) ただ、バージョンアップが頻繁に行われているので、今現在のDockerfileが半年・一年後のDockerエンジンでも動く保証(下位互換)があるかは正直分からず不安要素の一つです。