[[Docker]]は、開発者であれば一度は触れるツールでしょう。しかし、毎日使うものではないため、しばらく経ってから再び使おうとすると、コマンドを忘れてしまいがちです。いつも使うコマンドは覚えていても、それ以外のものは忘れやすいものです。
私もそのたびに公式ドキュメントを探したり、検索したりしていました。この繰り返しの手間を少しでも減らすため、**よく使うDockerコマンドをシンプルかつ明瞭にまとめたチートシート**を作成しました。
必要な時にいつでも参照できるよう、要点だけを厳選してまとめました。😊
***

## 1. イメージ関連コマンド
| コマンド | 説明 |
| --- | --- |
| `docker build -t <名前>:<タグ> .` | 現在のディレクトリでDockerfileからイメージをビルド |
| `docker images` | ローカルイメージリストの表示 |
| `docker rmi <イメージID>` | イメージの削除 |
| `docker pull <イメージ>` | リモートリポジトリからイメージをプル |
| `docker push <イメージ>` | イメージをリポジトリにプッシュ (ログインが必要) |
## 2. コンテナ関連コマンド
| コマンド | 説明 |
| --- | --- |
| `docker run -d --name <名前> -p 8000:8000 <イメージ>` | バックグラウンドでコンテナを実行 |
| `docker ps` | 実行中のコンテナリスト |
| `docker ps -a` | 停止中のコンテナを含む全リスト |
| `docker exec -it <コンテナ名> /bin/bash` | 実行中のコンテナに入る |
| `docker logs -f <コンテナ名>` | リアルタイムログの表示 |
| `docker stop <コンテナ名>` | コンテナの停止 |
| `docker rm <コンテナ名>` | 停止したコンテナの削除 |
| `docker restart <コンテナ名>` | コンテナの再起動 |
## 3. ボリュームとネットワーク
| コマンド | 説明 |
| --- | --- |
| `docker volume ls` | ボリュームリスト |
| `docker volume prune` | 未使用ボリュームのクリーンアップ |
| `docker network ls` | ネットワークリスト |
| `docker network inspect <ネットワーク名>` | ネットワーク詳細の表示 |
## 4. Docker Compose
| コマンド | 説明 |
| --- | --- |
| `docker-compose up -d` | バックグラウンドでサービスを実行 |
| `docker-compose down` | 全サービスの停止と削除 |
| `docker-compose ps` | 実行中のサービスリスト |
| `docker-compose logs -f` | リアルタイムログの確認 |
| `docker-compose restart <サービス名>` | サービスの再起動 |
## 5. Docker Swarm
| コマンド | 説明 |
| --- | --- |
| `docker swarm init` | Swarmモードの初期化 |
| `docker stack deploy -c docker-compose.yml <スタック名>` | スタックのデプロイ |
| `docker stack rm <スタック名>` | スタックの停止と削除 |
| `docker service ls` | サービスリスト |
| `docker service ps <サービス名>` | サービスの状態表示 |
| `docker service update --force <サービス名>` | サービスの再起動 (新しい設定を適用) |
## 6. その他の便利なコマンド
| コマンド | 説明 |
| --- | --- |
| `docker system df` | ディスク使用量の確認 |
| `docker system prune` | 未使用のイメージ/コンテナ/ボリュームのクリーンアップ |
| `docker stats` | リアルタイムコンテナリソース使用量の確認 |
| `docker inspect <コンテナ名またはイメージ名>` | オブジェクト詳細情報の確認 |
| `docker info` | 現在のDocker環境情報 |
| `journalctl -u docker.service` | systemdベースのDockerサービスのログを確認 |
| `sudo systemctl status docker` | Dockerデーモンの状態を確認 |
| `sudo systemctl restart docker` | Dockerデーモンの再起動 |
| `sudo less /var/log/syslog` | システム全体のログからDocker関連メッセージを検索可能 (Ubuntuの場合) |
***
多くの開発者の皆様のお役に立てれば幸いです。
Dockerに関するより多くの情報がブログに多数用意されていますので、右側の検索窓を使って気になるキーワードを検索してみてください。