Docker
Docker はコンテナ化プラットフォームである。Dockerfile でイメージをビルドし、docker run でコンテナを実行することで、アプリケーションのパッケージングとデプロイを簡素化する。
目的
アプリケーションのパッケージングと配布を標準化し、一度ビルドすればどこでも実行できるようにする。
メカニズム
Dockerfile はビルド手順(FROM/RUN/COPY/CMD)を記述する。レイヤー化されたイメージキャッシュがビルドを高速化する。docker run はイメージからコンテナを生成し、docker-compose は複数コンテナ構成をオーケストレーションする。Docker Hub でイメージを共有できる。
ユースケース
- アプリケーションのコンテナ化
- ローカルな開発環境
- CI/CD パイプライン