Dockerとは
Dockerは、アプリケーションと実行に必要なファイルを、コンテナという分離された環境で動かすためのプラットフォームです。開発者のPCへ直接たくさんのソフトを入れる代わりに、必要な環境をイメージとして用意し、そのイメージからコンテナを起動します。
- イメージ:コンテナを作るための読み取り専用の設計図
- コンテナ:イメージから起動した実行中または停止済みの環境
- レジストリ:イメージを保管・共有する場所。Docker Hubが代表例
- ボリューム:コンテナを削除しても残したいデータの保存場所
Dockerfileはイメージの作り方、Composeファイルは複数コンテナをどう起動するかを記述します。Docker公式のコンテナ概念も、用語を確認するときに役立ちます。
最初のコンテナを動かす
インストール後は、次のコマンドでDockerが動くことを確認します。コマンドはターミナルまたはPowerShellで実行してください。
docker version
docker run --rm hello-worldClient: Docker Engine - Community
Version: 28.x.x
Hello from Docker!
This message shows that your installation appears to be working correctly.docker runは、必要ならイメージを取得し、新しいコンテナを作成して起動します。--rmは、処理が終了したコンテナを自動削除するオプションです。学習用の一回限りの確認では便利ですが、後で状態を調べたいコンテナには付けないこともあります。
この講座の進み方
まずインストールと確認で環境を準備し、イメージとコンテナで仕組みを理解します。次に基本コマンド、Dockerfile、データを残すボリューム、コンテナ同士をつなぐネットワークへ進みます。
すべてのコマンドを暗記する必要はありません。COMMAND、OUTPUT、説明の順に読み、実際に自分の環境で同じ結果になるか確かめてください。出力のバージョン番号やコンテナ名は環境により変わります。
最後にComposeで複数サービスをまとめ、確認・安全な運用でログ、設定、不要なデータの整理を学びます。理解度はDocker練習問題で確認できます。
安全に学ぶための注意
Dockerのコマンドには、コンテナやイメージだけでなく、ボリュームのデータを削除するものがあります。特にdocker system pruneやdocker compose down -vは、対象と影響を確認してから使います。
- 公開するポートは必要なものだけにする
- パスワードやAPIキーをDockerfileやイメージへ書かない
- 削除前に
docker ps -a、docker volume lsで対象を確認する - 公式イメージでもタグと提供元を確認してから使う
次に学ぶこと
この講座を終えたら、普段使っているPHPやNode.jsのアプリをComposeで動かし、ソースコードをバインドマウントして編集結果を確認してみましょう。さらに本番運用へ進むときは、イメージの小型化、非rootユーザー、シークレット管理、バックアップ、CI/CDなどを公式資料で深掘りします。