Docker
読み
ドッカー
意味
- アプリケーションとその実行環境を軽量なコンテナとしてパッケージ化し任意の環境で動かせるプラットフォーム
- Dockerfileで環境を定義しDockerイメージをビルドすることで開発・本番の環境差分を最小化する技術
- 仮想マシンより軽量で起動が高速なためマイクロサービスやCI/CDパイプラインで広く使われるコンテナ実行基盤
比喩
お弁当箱のようなもの。料理(アプリ)と食器(環境)を一緒に詰めて、どこでも同じように食べられる。
語源
Docker=港湾労働者(コンテナを扱う人)。コンテナ技術にちなんだ命名
例文
- DockerでWebアプリをコンテナ化し開発・本番環境で同じイメージを使い回した
- Docker Composeで複数コンテナを連携させデータベースとアプリを一括起動した
- DockerfileにNode.jsのバージョンを明記しチーム全員が同一環境で開発できるようにした
よくある勘違い
- Dockerと仮想マシンを同じものだと考えること→Dockerはホスト��Sのカーネルを共有し軽量
- Dockerコンテナ内のデータは永続化されると思い込むこと→コンテナ削除でデータは消えるためVolumeを使う
- Dockerfileのレイヤーキャッシュを無視し毎回全体を再ビルドすること→依存関係を上に書きキャッシュを活用