最終更新日:
コンテナとは、アプリケーションと、その実行に必要なものをひとまとめにして、どの環境でも同じように動かす技術です。
コンテナは、OSの機能を使って、アプリケーションの実行環境を区切ります。仮想マシンのようにOSを丸ごと持たないため、軽く、すばやく起動できます。Docker は、コンテナを作って動かすための代表的なソフトウェアで、構成を書いたファイルから、コンテナのもと(イメージ)を作ります。
開発者の手元、検証の環境、本番の環境で同じ構成を再現できるため、「手元では動くのに本番では動かない」といった食い違いを減らせます。CI/CDの仕組みや、クラウドのコンテナ向けのサービスと組み合わせて使われます。
イメージに含まれるソフトウェアにも脆弱性が見つかるため、定期的に作り直して更新します。コンテナの数が増えると管理の仕組みが要り、Kubernetes などを使うことになりますが、システムの規模に対して仕組みが重くなりすぎないよう判断します。