AI活用の教科書

Docker

Dockerどっかー

ひとことで言うと

アプリと必要な道具を箱に詰めて、どこでも同じように動かす定番ツールです。

📖 もうちょい詳しく

何が新しいの?

Dockerは、アプリと、それが動くのに必要な道具を ひとつの箱(コンテナ)にまとめて持ち運ぶ ための、代表的な道具です。
昔は「自分のパソコンでは動くのに、サーバーに置くと動かない」という食い違いがよく起きていました。動かす場所ごとに、入っているソフトの種類やバージョンが少しずつ違ったからです。Dockerは、その箱づくりと持ち運びを誰でも手軽にできるようにして、コンテナという考え方を一気に広めました。

どうやって動いてるの?

Dockerでは、まず「イメージ」と呼ばれる設計図を用意します。アプリと必要な道具一式が詰まった、箱のもとになるものです。
このイメージから「コンテナ」という実際に動く箱を作って起動します。コンテナはOS(土台のソフト)を周りと共有しながら、アプリの動く場所だけを軽く区切って動きます。OSごと丸ごと用意しないので、起動が速くてサイズが小さいことが多いです。同じイメージからは、同じ状態のコンテナを何個でも作れます。

何ができるの?

開発した人のパソコンでも、テスト用のサーバーでも、本番でも、同じイメージを置けば同じように動かせます。
「Dockerfile」という手順書に箱の作り方を書いておけば、同じ箱を誰でも作り直せます。作ったイメージは「Docker Hub」などの置き場に共有でき、他の人がすぐ使えるのも便利な点です。

🌱 身近なたとえ

お弁当箱で例えると、Dockerは「おかずと道具を詰めて、フタをして持ち運ぶ」やり方です。
必要なものが全部その中にそろっているので、運んだ先がどんな場所でも、フタを開ければすぐ同じように食べ始められます。
レシピ(Dockerfile)さえあれば、同じ中身のお弁当を何個でも作り直せます。

✅ まず覚えるポイント

  • Dockerは、コンテナを手軽に作って動かす代表的なツール
  • 「イメージ」という設計図から「コンテナ」という箱を起動する
  • OSを共有するので、起動が速く軽いことが多い
  • Dockerfileに手順を書けば、同じ箱を誰でも作り直せる
  • 「自分の環境では動いた」という食い違いを減らせる

🧭 よくある勘違い

Dockerとコンテナは同じもの?

少し違います。コンテナは「アプリを箱に詰めて動かす」という技術や、その箱そのものを指す言葉です。
Dockerは、そのコンテナを作って動かすための道具のひとつです。コンテナを扱う道具はほかにもありますが、Dockerが広く使われているので、ほぼ同じ意味で語られることも多いです。

Dockerと仮想マシンは同じもの?

似ていますが、分け方の細かさが違います。仮想マシンはOSごと丸ごと用意して分けるのに対し、DockerのコンテナはOSを共有してアプリの場所だけを軽く区切ります。
そのぶんコンテナのほうが軽くて起動が速いことが多いです。用途によって使い分けたり、組み合わせたりします。

🧩 関連して覚えると楽な言葉

  • コンテナ: Dockerが作って動かす対象。アプリを箱に詰めて持ち運ぶ技術
  • 仮想化: 1台の機械を分けて使う技術。コンテナの親戚にあたる考え方
  • Kubernetes: たくさんのコンテナをまとめて管理してくれる仕組み
  • マイクロサービス: アプリを小さな部品に分ける作り方。Dockerと相性がよい

🏁 ひとことでまとめ

Dockerは、アプリを必要な道具ごと箱に詰めて、どこでも同じように動かすための定番ツールです。
お弁当を詰めて運ぶように、設計図さえあれば同じ中身を何度でも作れるので、置く場所が変わっても「動かない」を減らせます。