リファレンス · Reference
Dockerコマンド一覧
Docker チートシート 2026年版。コンテナ操作・イメージ管理・Compose・ネットワーク・ボリューム・レジストリ・システム管理の74コマンド一覧をカテゴリ別に検索・コピーできます。
最終更新:
使い方
使い方を開く使い方を閉じる
- 1
カテゴリで絞り込み
カテゴリボタンをクリックして、コンテナ操作・イメージ管理・Compose等から絞り込みます。
- 2
コマンドを検索
検索ボックスにキーワードを入力すると、コマンド名・説明・オプション・使用例からリアルタイムに検索できます。
- 3
コマンドをコピー
カードのコピーボタンをクリックすると、コマンドがクリップボードにコピーされます。
docker run
ポイント
- -d: バックグラウンドで実行(デタッチモード)
- -p: ポートマッピング(ホスト:コンテナ)
- --name: コンテナに名前を付ける
- -v: ボリュームマウント
- --rm: 終了時にコンテナを自動削除
- -e: 環境変数を設定
- --network: 接続するネットワークを指定
使用例
docker run -d -p 8080:80 nginxNginxをバックグラウンドで起動し、ポート8080でアクセスdocker run --rm -it ubuntu bashUbuntuコンテナに対話的に接続し、終了時に自動削除docker run -d --name myapp -e NODE_ENV=production -p 3000:3000 node:20Node.jsアプリを名前付きで本番モード起動docker ps
ポイント
- -a: 停止中を含む全コンテナを表示
- -q: コンテナIDのみ表示
- --filter: 条件でフィルタリング
- --format: 出力形式をカスタマイズ
使用例
docker ps実行中のコンテナを一覧表示docker ps -a停止中を含む全コンテナを表示docker ps -q --filter status=exited停止中のコンテナIDのみ取得docker stop
ポイント
- -t: 停止までの待機時間(秒)。デフォルト10秒
- 複数コンテナを同時に停止可能
使用例
docker stop myapp名前指定でコンテナを停止docker stop $(docker ps -q)実行中の全コンテナを停止docker start
ポイント
- -a: アタッチモードで起動(標準出力に接続)
- -i: 対話モードで起動
使用例
docker start myapp停止中のコンテナを起動docker start -ai myapp対話モードでコンテナを起動docker rm
ポイント
- -f: 実行中でも強制削除
- -v: 関連する匿名ボリュームも削除
使用例
docker rm myapp停止中のコンテナを削除docker rm -f $(docker ps -aq)全コンテナを強制削除docker exec
ポイント
- -it: 対話的なターミナルセッションを開く
- -d: バックグラウンドで実行
- -e: 環境変数を設定
- -w: 作業ディレクトリを指定
使用例
docker exec -it myapp bashコンテナ内でbashシェルを起動docker exec myapp cat /etc/hostsコンテナ内のファイルを表示docker logs
ポイント
- -f: リアルタイムでログを追跡
- --tail: 末尾N行のみ表示
- -t: タイムスタンプを表示
- --since: 指定時間以降のログを表示
使用例
docker logs -f myappリアルタイムでログを追跡docker logs --tail 100 myapp最新100行のログを表示docker logs --since 1h myapp直近1時間のログを表示docker inspect
ポイント
- -f: Go テンプレートで出力フォーマットを指定
- --type: 対象の種類を指定(container, image, network等)
使用例
docker inspect myappコンテナの詳細情報を表示docker inspect -f '{{.NetworkSettings.IPAddress}}' myappコンテナのIPアドレスのみ取得docker cp
ポイント
- コンテナ→ホスト、ホスト→コンテナの双方向コピーが可能
- -a: アーカイブモード(所有者・権限を保持)
使用例
docker cp myapp:/app/logs ./logsコンテナからホストにログをコピーdocker cp ./config.json myapp:/app/ホストからコンテナに設定ファイルをコピーdocker stats
ポイント
- --no-stream: 1回だけ表示して終了
- --format: 出力形式をカスタマイズ
使用例
docker stats全コンテナのリソース使用状況を表示docker stats --no-stream --format 'table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}'CPU・メモリ使用量を表形式で1回表示docker build
ポイント
- -t: イメージにタグを付ける
- -f: Dockerfileのパスを指定
- --no-cache: キャッシュを使わずにビルド
- --build-arg: ビルド時の引数を指定
- --target: マルチステージビルドのターゲットを指定
使用例
docker build -t myapp:latest .カレントディレクトリでイメージをビルドdocker build -t myapp:v1 -f Dockerfile.prod .本番用Dockerfileを指定してビルドdocker build --no-cache -t myapp:latest .キャッシュなしでクリーンビルドdocker images
ポイント
- -a: 中間イメージも含めて表示
- -q: イメージIDのみ表示
- --filter: 条件でフィルタリング
使用例
docker imagesローカルのイメージを一覧表示docker images --filter dangling=trueタグなしイメージ(dangling)を表示docker rmi
ポイント
- -f: 強制削除
- 複数イメージを同時に削除可能
使用例
docker rmi myapp:latest指定イメージを削除docker rmi $(docker images -q --filter dangling=true)タグなしイメージを一括削除docker tag
ポイント
- 既存イメージに新しい名前/タグを追加
- レジストリへのpush前にリポジトリ名を付与
使用例
docker tag myapp:latest myapp:v1.0バージョンタグを追加docker tag myapp:latest registry.example.com/myapp:latestプライベートレジストリ用にタグ付けdocker pull
ポイント
- --platform: プラットフォームを指定(linux/amd64等)
- -a: 全タグをpull
使用例
docker pull nginx:latest最新のNginxイメージを取得docker pull --platform linux/arm64 node:20ARM64版のNode.js 20を取得docker push
ポイント
- 事前にdocker loginが必要
- タグにレジストリURLを含めてpush
使用例
docker push myuser/myapp:latestDocker Hubにイメージをpushdocker push registry.example.com/myapp:v1.0プライベートレジストリにpushdocker save
ポイント
- -o: 出力ファイルを指定
- オフライン環境へのイメージ転送に使用
使用例
docker save -o myapp.tar myapp:latestイメージをtarファイルに保存docker load
ポイント
- -i: 入力ファイルを指定
- docker saveで保存したイメージを復元
使用例
docker load -i myapp.tartarファイルからイメージを読み込みdocker compose up
ポイント
- -d: バックグラウンドで起動
- --build: 起動前にイメージをビルド
- --force-recreate: コンテナを強制再作成
- --scale: サービスのインスタンス数を指定
使用例
docker compose up -d全サービスをバックグラウンドで起動docker compose up -d --buildビルドしてからバックグラウンドで起動docker compose up -d --scale web=3webサービスを3インスタンスで起動docker compose down
ポイント
- -v: ボリュームも削除
- --rmi all: イメージも削除
- --remove-orphans: 定義にないコンテナも削除
使用例
docker compose downサービスを停止しコンテナを削除docker compose down -vボリュームも含めて完全削除docker compose build
ポイント
- --no-cache: キャッシュを使わずにビルド
- --pull: ベースイメージを最新に更新
使用例
docker compose build全サービスのイメージをビルドdocker compose build --no-cache webwebサービスをキャッシュなしでビルドdocker compose ps
ポイント
- -a: 停止中のコンテナも表示
- --format: 出力形式をカスタマイズ
使用例
docker compose psサービスの状態を一覧表示docker compose logs
ポイント
- -f: リアルタイムでログを追跡
- --tail: 末尾N行のみ表示
- 特定サービス名を指定可能
使用例
docker compose logs -f webwebサービスのログをリアルタイム追跡docker compose logs --tail 50全サービスの最新50行を表示docker compose exec
ポイント
- -T: 擬似TTYを無効化(CI/CD向け)
- -e: 環境変数を設定
使用例
docker compose exec web bashwebサービスのコンテナ内でbashを起動docker compose exec db psql -U postgresdbサービスでPostgreSQLに接続docker compose run
ポイント
- --rm: 実行後にコンテナを削除
- --no-deps: 依存サービスを起動しない
- -e: 環境変数を設定
使用例
docker compose run --rm web npm testwebサービスでテストを実行し終了後に削除docker compose run --rm db pg_dump -U postgres mydb > backup.sqlDBバックアップを取得docker compose config
ポイント
- --services: サービス名のみ表示
- --volumes: ボリューム名のみ表示
- -q: エラーがなければ何も表示しない
使用例
docker compose configマージされた設定を表示docker compose config --services定義されたサービス名を一覧表示docker network create
ポイント
- -d: ドライバーを指定(bridge, overlay等)
- --subnet: サブネットを指定
- --gateway: ゲートウェイを指定
使用例
docker network create mynetbridgeネットワークを作成docker network create --subnet 172.20.0.0/16 mynetサブネット指定でネットワークを作成docker network ls
ポイント
- --filter: 条件でフィルタリング
- -q: ネットワークIDのみ表示
使用例
docker network ls全ネットワークを一覧表示docker network inspect
ポイント
- -f: Go テンプレートで出力形式を指定
- 接続中のコンテナ一覧も確認可能
使用例
docker network inspect mynetネットワークの詳細情報を表示docker network connect
ポイント
- --ip: 固定IPアドレスを指定
- --alias: ネットワーク内でのエイリアスを指定
使用例
docker network connect mynet myappコンテナをネットワークに接続docker network disconnect
ポイント
- -f, --force: コンテナを強制的にネットワークから切断
使用例
docker network disconnect multi-host-network container1コンテナをネットワークから切断docker network rm
ポイント
- 接続中のコンテナがある場合は削除不可
- 複数ネットワークを同時に削除可能
使用例
docker network rm mynetネットワークを削除docker network prune
ポイント
- -f: 確認プロンプトをスキップ
- --filter: 条件でフィルタリング(例: until=タイムスタンプ)
使用例
docker network prune -f未使用ネットワークを確認なしで一括削除docker volume create
ポイント
- -d: ドライバーを指定
- --label: ラベルを付与
使用例
docker volume create mydataボリュームを作成docker volume ls
ポイント
- --filter: 条件でフィルタリング
- -q: ボリューム名のみ表示
使用例
docker volume ls全ボリュームを一覧表示docker volume inspect
ポイント
- -f: Go テンプレートで出力形式を指定
- マウントポイントやドライバー情報を確認
使用例
docker volume inspect mydataボリュームの詳細情報を表示docker volume rm
ポイント
- -f: 強制削除
- 使用中のボリュームは削除不可
使用例
docker volume rm mydataボリュームを削除docker volume prune
ポイント
- -f: 確認プロンプトをスキップ
- --filter: 条件でフィルタリング
使用例
docker volume prune -f未使用ボリュームを確認なしで一括削除docker login
ポイント
- -u: ユーザー名を指定
- -p: パスワードを指定(非推奨、--password-stdinを推奨)
- --password -: 値にハイフンを渡すと標準入力からパスワードを読み取り
- --password-stdin: 標準入力からパスワードを読み取り
使用例
docker loginDocker Hubにログインdocker login registry.example.comプライベートレジストリにログインdocker logout
ポイント
- 保存された認証情報を削除
- レジストリURLを指定可能
使用例
docker logoutDocker Hubからログアウトdocker search
ポイント
- --filter: 条件でフィルタリング(stars, is-official等)
- --limit: 表示件数の上限
- --format: 出力形式をカスタマイズ
使用例
docker search nginxNginxイメージを検索docker search --filter is-official=true node公式Node.jsイメージを検索docker manifest inspect
ポイント
- マルチプラットフォームイメージの対応アーキテクチャを確認
- --verbose: 詳細情報を表示
使用例
docker manifest inspect nginx:latestNginxイメージのマニフェストを表示docker system df
ポイント
- -v: 詳細な内訳を表示
- イメージ・コンテナ・ボリューム・キャッシュの使用量を確認
使用例
docker system dfディスク使用量のサマリーを表示docker system df -v詳細なディスク使用量を表示docker system prune
ポイント
- -a: 全未使用イメージも削除
- --volumes: ボリュームも削除
- -f: 確認プロンプトをスキップ
- --filter: 条件でフィルタリング
使用例
docker system prune -f未使用リソースを確認なしで削除docker system prune -a --volumes -f全未使用リソース(イメージ・ボリューム含む)を削除docker info
ポイント
- ストレージドライバー、ネットワーク設定等を確認
- -f: Go テンプレートで出力形式を指定
使用例
docker infoDocker環境の詳細情報を表示docker version
ポイント
- クライアントとサーバーのバージョンを表示
- -f: Go テンプレートで出力形式を指定
使用例
docker versionバージョン情報を表示docker version --format '{{.Server.Version}}'サーバーバージョンのみ表示docker context ls
ポイント
- --format: 出力形式をカスタマイズ
- リモートDocker環境の管理に使用
使用例
docker context ls登録済みコンテキストを一覧表示docker buildx build
ポイント
- --platform: ターゲットプラットフォームを指定
- --push: ビルドと同時にレジストリにpush
- --load: ビルドしたイメージをローカルにロード
- --cache-from / --cache-to: キャッシュの入出力先を指定
使用例
docker buildx build --platform linux/amd64,linux/arm64 -t myapp:latest --push .AMD64/ARM64の両方でビルドしてpushdocker buildx build --load -t myapp:latest .BuildKitでビルドしてローカルにロードdocker restart
ポイント
- -t: 停止までの待機時間(秒)。デフォルト10秒
- stop と start を順に実行する
使用例
docker restart myappコンテナを再起動docker restart -t 30 myapp30秒待ってから再起動docker kill
ポイント
- -s: 送信するシグナルを指定(デフォルト KILL)
- stop と異なり猶予期間なく即座に終了
使用例
docker kill myappコンテナを即座に強制終了docker kill -s SIGTERM myappSIGTERMを送信してgracefulに終了docker pause
ポイント
- cgroups freezer によりプロセスをサスペンド
- 再開には docker unpause を使用
使用例
docker pause myappコンテナを一時停止docker unpause
ポイント
- docker pause で停止したプロセスを復帰させる
使用例
docker unpause myapp一時停止中のコンテナを再開docker rename
ポイント
- 実行中・停止中いずれも変更可能
- 新しい名前は他のコンテナと重複しないこと
使用例
docker rename old-name new-nameコンテナ名を old-name から new-name に変更docker port
ポイント
- -p で公開したポートのホスト側マッピングを確認
- ポート番号を指定すると特定のマッピングのみ表示
使用例
docker port myapp全ポートマッピングを表示docker port myapp 80コンテナの80番ポートのマッピングを確認docker wait
ポイント
- コンテナの終了ステータスを取得
- CI/バッチ処理で完了待ちに使用
使用例
docker wait myappコンテナの終了を待ち、終了コードを出力docker top
ポイント
- ps コマンドのオプションを渡せる
- コンテナ内のプロセスツリーをホスト側から確認
使用例
docker top myappコンテナ内のプロセス一覧を表示docker top myapp auxps aux 形式で表示docker container prune
ポイント
- -f: 確認プロンプトをスキップ
- --filter: until=24h など条件で絞り込み
使用例
docker container prune -f停止中の全コンテナを削除docker container prune -f --filter until=24h24時間以上前に停止したコンテナのみ削除docker image prune
ポイント
- -a: 一切のコンテナで参照されていない全イメージを削除
- -f: 確認プロンプトをスキップ
- --filter: until=72h などで絞り込み
使用例
docker image prune -fぶら下がりイメージのみ削除docker image prune -a -f未参照イメージを全削除docker history
ポイント
- --no-trunc: コマンド全体を省略せず表示
- -q: イメージID のみ表示
- --format: Go テンプレートで出力形式を指定
使用例
docker history nginx:latestNginxイメージのレイヤー構成を表示docker history --no-trunc myapp:latestビルド時のコマンドをフルで確認docker import
ポイント
- -c: Dockerfile風の指示を埋め込む(CMD, ENVなど)
- -m: コミットメッセージを指定
- --platform: プラットフォームを指定
使用例
docker import backup.tar myimage:importedtarballからイメージを作成cat rootfs.tar.gz | docker import - mybase:latest標準入力からインポートdocker export
ポイント
- -o: 出力先ファイルを指定
- イメージ履歴やメタデータは含まない(docker save との違い)
使用例
docker export -o backup.tar myappコンテナを backup.tar に書き出しdocker export myapp | gzip > backup.tar.gz圧縮して保存docker compose pull
ポイント
- --ignore-pull-failures: 一部失敗しても継続
- --include-deps: 依存サービスのイメージも取得
- -q: 進行状況を抑制
使用例
docker compose pull全サービスのイメージを最新化docker compose pull web db特定サービスのみpulldocker compose restart
ポイント
- -t: 停止までの待機時間(秒)
- サービス名を省略すると全サービスを再起動
使用例
docker compose restart全サービスを再起動docker compose restart webwebサービスのみ再起動docker events
ポイント
- --since / --until: 期間で絞り込み
- --filter: type=container などでイベント種別を絞り込み
- --format: Go テンプレートで出力形式を指定
使用例
docker events全イベントをリアルタイムで監視docker events --filter type=container --filter event=dieコンテナ停止イベントのみ表示docker context create
ポイント
- --docker: ホスト接続情報(host=ssh://user@host など)を指定
- --description: 説明文を付与
- リモートDocker環境への接続を切り替え可能に
使用例
docker context create remote --docker host=ssh://user@example.comSSH経由でリモートDockerに接続するコンテキストを作成docker context use
ポイント
- default に戻すには docker context use default
- DOCKER_CONTEXT 環境変数でも切り替え可能
使用例
docker context use remoteremote コンテキストに切り替えdocker context use defaultローカル環境に戻すdocker buildx create
ポイント
- --name: ビルダー名を指定
- --use: 作成と同時にアクティブ化
- --driver: docker-container など使用ドライバーを指定
使用例
docker buildx create --name multiarch --usemultiarch ビルダーを作成して即アクティブ化docker buildx ls
ポイント
- 現在アクティブなビルダーには * 印が付く
- 対応プラットフォームと状態を一覧化
使用例
docker buildx ls全ビルダーを一覧表示docker scout cves
ポイント
- --only-severity: critical,high など重大度でフィルタ
- --format: sarif など出力形式を指定
- Docker Desktop または Docker CLI 拡張で利用可能
使用例
docker scout cves nginx:latestNginxイメージの脆弱性を一覧表示docker scout cves --only-severity critical,high myapp:latestCritical / High の脆弱性のみ表示docker attach
ポイント
- --detach-keys: デタッチ用のキーシーケンスを上書き
- --no-stdin: 標準入力を接続しない
- --sig-proxy: 受信したシグナルをプロセスへ転送(デフォルト true)
- -i -t 付きで起動したコンテナは CTRL-p CTRL-q で実行したままデタッチできる
- アタッチしたプロセスの終了コードがそのまま返る
使用例
docker attach myapp実行中のコンテナの標準入出力に接続docker attach --no-stdin myapp標準入力を接続せず出力のみを確認docker commit
ポイント
- -a, --author: 作成者を指定
- -c, --change: Dockerfile 命令を作成イメージに適用
- -m, --message: コミットメッセージを指定
- --no-pause: コミット中にコンテナを一時停止しない
使用例
docker commit myapp myimage:v1コンテナの現在の状態から新しいイメージを作成docker commit -m fix-config -a dev-team myapp myimage:v2コミットメッセージと作成者を付けてイメージ化docker commit --change 'ENV DEBUG=true' myapp myimage:debugDockerfile 命令を適用しながらイメージ化docker create
ポイント
- --name: コンテナに名前を付ける
- -p: ポートマッピング(ホスト:コンテナ)
- -v: ボリュームマウント
- -e: 環境変数を設定
- --network: 接続するネットワークを指定
- docker run -d と同様だがコンテナは起動されず、任意のタイミングで docker start できる
使用例
docker create --name myapp nginxコンテナを作成するだけで起動はしないdocker create -i -t --name mycontainer alpine対話用の設定で作成し、後から docker start で起動docker create -p 8080:80 --name web nginxポートマッピングを設定してコンテナを作成docker diff
ポイント
- A: ファイルまたはディレクトリが追加された
- C: ファイルまたはディレクトリが変更された
- D: ファイルまたはディレクトリが削除された
- フラグは無く、コンテナ名またはIDのみを指定する
使用例
docker diff myapp起動元イメージからの変更ファイルを一覧表示docker update
ポイント
- --cpus: 使用するCPU数
- -c, --cpu-shares: CPU配分の相対的な重み
- -m, --memory: メモリ上限
- --memory-swap: メモリ+スワップの上限(-1 で無制限)
- --pids-limit: プロセス数の上限(-1 で無制限)
- --restart: コンテナ終了時の再起動ポリシー
- Windowsコンテナでは非対応。--rm 付きで起動したコンテナは再起動ポリシーを変更できない
使用例
docker update --cpu-shares 512 -m 300M myappCPU配分とメモリ上限をまとめて変更docker update --restart=on-failure:3 myapp再起動ポリシーを on-failure(最大3回)に変更Dockerコマンド一覧について
Docker チートシート(コマンド一覧)は、Docker CLI 29.x の主要74コマンドをカテゴリ別に整理した無料のリファレンスツールです。コンテナのライフサイクル管理(run/start/stop/restart/kill/pause)、イメージのビルドと配布(build/buildx/push/pull/history)、Docker Composeによるマルチコンテナ管理(compose up/down/pull/restart)、ネットワーク・ボリューム・コンテキストの設定、Docker Scoutによる脆弱性スキャンまで、実際の開発現場で必要なコマンドを7カテゴリに整理しています。各コマンドには実践的な使用例とオプション解説が付いており、コンテナ操作の要点を素早く確認できます。リアルタイム検索とワンクリックコピーで、作業中のターミナルにすぐ貼り付けられます。
主な機能
- 74のDockerコマンドを7カテゴリで整理(Docker 29.x 対応)
- コマンド名・説明・オプション・使用例をリアルタイム検索
- buildx・scout・context など最新サブコマンドにも対応
- ワンクリックでコマンドをコピー、各コマンドに実践的な使用例を掲載
こんな時に便利
- Dockerコマンドのオプションを素早く確認したい時
- Composeコマンドの正しい構文を調べたい時
- ネットワークやボリュームの管理コマンドを忘れた時
- Docker環境のクリーンアップ手順を確認したい時
よくある質問
docker compose と docker-compose の違いは何ですか?
docker compose(スペース区切り)はDocker CLI v2に統合されたCompose V2コマンドです。docker-compose(ハイフン区切り)は旧バージョン(V1)の独立したバイナリです。現在はCompose V2の使用が推奨されています。
不要なイメージやコンテナを一括削除するには?
docker system prune -a --volumes -f を実行すると、停止中のコンテナ、未使用のネットワーク、タグなしイメージ、未使用ボリュームをまとめて削除できます。本番環境では -f(確認スキップ)の使用に注意してください。
docker run と docker compose up の使い分けは?
docker run は単一コンテナの起動に使用します。複数のコンテナ(アプリ+DB+キャッシュ等)を連携させる場合は docker compose up を使い、docker-compose.yml で設定を管理するのが推奨です。
マルチプラットフォームのイメージをビルドするには?
docker buildx build --platform linux/amd64,linux/arm64 を使用します。BuildKitが有効な環境で、--push オプションと組み合わせてレジストリに直接プッシュするのが一般的です。
コンテナ内のログをリアルタイムで確認するには?
docker logs -f コンテナ名 でリアルタイムにログを追跡できます。Docker Composeの場合は docker compose logs -f サービス名 を使います。--tail オプションで表示行数を制限できます。
さらに学ぶ・環境を整えるPR
※本セクションにはアフィリエイト広告を含みます