一言でいうと

Dockerとは、アプリケーション(ソフトウェア)を同じ環境で確実に動かすための箱のようなツールです。

もう少し詳しく

皆さんがスマートフォンにアプリをインストールする時、どの端末でも同じように動きますよね。Dockerはその考え方と似ています。

例えば、「AさんがWindowsパソコンで作ったプログラムが、BさんのMacパソコンでは動かない」という問題が起こることがあります。これは環境の違いが原因です。Dockerはプログラムに必要なすべてのもの(プログラム本体、ライブラリ=補助ソフト、設定など)を一つの箱に詰め込みます。この箱を別のパソコンに移すと、どのパソコンでも完全に同じ環境でプログラムが動くわけです。

よく使われる場面

エラーログ(プログラムの不具合記録)を調べるサイトでも、Dockerが活躍しています。開発者がプログラムを作るときと、実際に使う環境が同じだと、エラーの原因を正確に特定しやすくなります。また、複数の開発者が協力する時に「この環境で動かしてください」と同じ箱を配ることで、無駄な時間を削減できます。

関連する言葉

  • コンテナ=Dockerが使う箱のこと
  • イメージ=箱の設計図のような存在
  • 仮想化=コンピュータの中に別のコンピュータ環境を作ること