一言でいうと
Dockerとは、アプリケーション(ソフトウェア)を同じ環境で確実に動かすための箱のようなツールです。
もう少し詳しく
皆さんがスマートフォンにアプリをインストールする時、どの端末でも同じように動きますよね。Dockerはその考え方と似ています。
例えば、「AさんがWindowsパソコンで作ったプログラムが、BさんのMacパソコンでは動かない」という問題が起こることがあります。これは環境の違いが原因です。Dockerはプログラムに必要なすべてのもの(プログラム本体、ライブラリ=補助ソフト、設定など)を一つの箱に詰め込みます。この箱を別のパソコンに移すと、どのパソコンでも完全に同じ環境でプログラムが動くわけです。
よく使われる場面
エラーログ(プログラムの不具合記録)を調べるサイトでも、Dockerが活躍しています。開発者がプログラムを作るときと、実際に使う環境が同じだと、エラーの原因を正確に特定しやすくなります。また、複数の開発者が協力する時に「この環境で動かしてください」と同じ箱を配ることで、無駄な時間を削減できます。
関連する言葉
- コンテナ=Dockerが使う箱のこと
- イメージ=箱の設計図のような存在
- 仮想化=コンピュータの中に別のコンピュータ環境を作ること