【完全版】Dockerコマンドチートシート2025|これだけ覚えれば現場で困らない
Docker初心者から中級者向けに、実務で本当に使うDockerコマンドを徹底解説。コンテナ・イメージ操作からDocker Composeまで網羅。
Dockerコマンドチートシート2025
「Dockerコマンドが多すぎて覚えられない...」 「毎回ググってしまう...」
正直、私も最初はそうでした。docker run のオプションだけで何十個もあって、頭がパンクしそうになったのを覚えています。
でも安心してください。現場で本当に使うコマンドは、実はそんなに多くないんです。
この記事では、Docker歴5年の経験から「これさえ押さえておけば困らない」コマンドを厳選してまとめました。ブックマークしておくと、いつでも見返せて便利ですよ。
Dockerって結局何なの?
Docker(ドッカー)は「どこでも同じ環境を再現できる箱」 です。
開発者なら一度は経験があるはず。「自分のPCでは動くのに、サーバーにデプロイしたら動かない」「新人が環境構築で3日潰れた」といった問題。Dockerを使えば、これらが劇的に減ります。
イメージとコンテナの関係
Dockerを理解する上で、この2つの違いは押さえておきましょう。
| 概念 | 例え | 説明 |
|---|---|---|
| イメージ | レシピ・設計図 | アプリと動作環境の「ひな形」 |
| コンテナ | 料理・製品 | イメージから作られた「実体」 |
1つのイメージから、何個でもコンテナを作れます。これが「どこでも同じ環境」を実現する仕組みです。
2025年のDocker事情
Docker Desktop の進化
2025年、Docker Desktopは大きく進化しています。
- リリース頻度が2週間ごとに - 以前は月1回だったのが、より頻繁にアップデート
- AI機能の統合 - Docker Model Runnerが正式リリースされ、ローカルでLLMを動かせるように
- セキュリティ強化 - Enhanced Container Isolation(強化されたコンテナ分離)が追加
docker-compose から docker compose へ
2023年以降、docker-compose は非推奨になりました。 これからは docker compose(ハイフンなし)を使いましょう。
Docker Desktopを最新版にしていれば、どちらでも動きますが、新しい方で覚えておくのがベストです。
まず覚える7つのコマンド
いきなり全部覚えなくて大丈夫。この7つで日常業務の9割はカバーできます。
| コマンド | 何をする | いつ使う |
|---|---|---|
docker run | コンテナを作って起動 | 新しく始めるとき |
docker ps | 動いてるコンテナ一覧 | 状況確認 |
docker stop | コンテナを止める | 作業終了時 |
docker start | コンテナを再開 | 作業再開時 |
docker logs | ログを見る | エラー調査 |
docker exec | コンテナに入る | 中を調べたいとき |
docker rm | コンテナを削除 | 不要になったとき |
これだけ。本当にこれだけで、まずは十分やっていけます。
状況別チートシート
イメージ操作
| やりたいこと | コマンド |
|---|---|
| イメージを検索 | docker search nginx |
| イメージをダウンロード | docker pull nginx |
| イメージ一覧を見る | docker images |
| イメージを削除 | docker rmi nginx |
| 使ってないイメージを一括削除 | docker image prune |
| Dockerfileからビルド | docker build -t myapp . |
コンテナ操作
| やりたいこと | コマンド |
|---|---|
| コンテナを作って起動 | docker run nginx |
| バックグラウンドで起動 | docker run -d nginx |
| 名前をつけて起動 | docker run -d --name web nginx |
| ポートを公開して起動 | docker run -d -p 8080:80 nginx |
| 動いてるコンテナ一覧 | docker ps |
| 全コンテナ一覧(停止中含む) | docker ps -a |
| コンテナを停止 | docker stop web |
| コンテナを再開 | docker start web |
| コンテナを削除 | docker rm web |
| 停止中のコンテナを一括削除 | docker container prune |
コンテナ調査
| やりたいこと | コマンド |
|---|---|
| ログを見る | docker logs web |
| ログをリアルタイムで見る | docker logs -f web |
| コンテナに入る(bash) | docker exec -it web bash |
| コンテナに入る(sh) | docker exec -it web sh |
| コンテナの詳細を見る | docker inspect web |
| リソース使用状況を見る | docker stats |
ファイル操作
| やりたいこと | コマンド |
|---|---|
| ホスト→コンテナにコピー | docker cp ./file.txt web:/app/ |
| コンテナ→ホストにコピー | docker cp web:/app/file.txt ./ |
お掃除系
| やりたいこと | コマンド |
|---|---|
| 未使用のもの全部削除 | docker system prune |
| ボリュームも含めて削除 | docker system prune -a --volumes |
| ディスク使用量を確認 | docker system df |
docker run のオプション解説
docker run は一番よく使うコマンドですが、オプションが多くて混乱しがち。実際によく使うものだけ解説します。
基本オプション
| オプション | 意味 | 使用例 |
|---|---|---|
-d | バックグラウンド実行 | docker run -d nginx |
-it | 対話モード(コンテナに入る) | docker run -it ubuntu bash |
--name | コンテナに名前をつける | docker run --name web nginx |
--rm | 終了時に自動削除 | docker run --rm nginx |
-p | ポート公開 | docker run -p 8080:80 nginx |
-v | ボリュームマウント | docker run -v ./data:/app/data nginx |
-e | 環境変数を設定 | docker run -e DEBUG=true nginx |
--env-file | 環境変数ファイル指定 | docker run --env-file .env nginx |
ポート指定(-p)の読み方
「ホストの8080番でアクセスしたら、コンテナの80番に繋ぐ」という意味です。
ボリュームマウント(-v)の読み方
「ホストの /home/user/data をコンテナの /app/data として見せる」という意味です。
これにより、コンテナを削除してもデータは消えません。
よく使う組み合わせ例
Docker Compose 入門
複数のコンテナを管理するなら、Docker Composeが便利です。
なぜDocker Composeを使うのか
Docker Compose コマンド
| やりたいこと | コマンド |
|---|---|
| 起動 | docker compose up |
| バックグラウンドで起動 | docker compose up -d |
| 停止 | docker compose stop |
| 停止&削除 | docker compose down |
| ボリュームも含めて削除 | docker compose down -v |
| ログを見る | docker compose logs |
| 特定サービスのログ | docker compose logs web |
| ビルドして起動 | docker compose up -d --build |
| コンテナに入る | docker compose exec web bash |
| 設定の確認 | docker compose config |
実践的な compose.yaml の例
現場でよく使うパターンを紹介します。
Dockerfile のベストプラクティス
イメージを自分で作るときに知っておきたいポイントです。
基本構成
やってはいけないこと
NG1: root ユーザーで実行する
NG2: 毎回フルビルドになる構成
NG3: 不要なファイルをコピーする
マルチステージビルド
本番用の軽量イメージを作るテクニックです。
ビルドに必要なツールは最終イメージに含まれないので、サイズがグッと小さくなります。
よくあるトラブルと解決法
コンテナが起動しない
ポートが既に使われている
コンテナからホストに接続したい
ディスクがいっぱいになった
Permission denied エラー
実践Tips
エイリアスを設定しよう
よく使うコマンドは短くしておくと便利です。
コンテナをサッと立てて試す
--rm をつけると、終了時に自動でコンテナが消えます。
.env ファイルを活用する
まとめ
Dockerコマンドは確かに多いですが、日常的に使うのはほんの一握りです。
最初はこれだけで十分。使っているうちに自然と他のコマンドも覚えていきます。
大事なのは、エラーが出ても慌てないこと。docker logs でログを見れば、たいていの問題は解決の糸口が見つかります。
ぜひこのページをブックマークして、困ったときの参考にしてください。