■ はじめに
Docker で色々とトラブった際に使用したTipsを 徐々にまとめていく
目次
【1】docker ps でコンテナの状態チェック 1)--all , -aオプション 【2】docker logs / docker compose logs でログチェック 1)docker logsコマンド / docker compose logsコマンド 2)-fオプション 【3】docker inspect で意図しているイメージになっているか確認 【4】docker execでコンテナ内に入って調査 【5】docker kill でコンテナを停止し、再度やり直してみる
【1】docker ps でコンテナの状態チェック
* docker ps で Docker コンテナの状態をチェックする
コマンド例
docker ps
# 以下も同じ
docker container ps
1)--all , -aオプション
* 全てのコンテナを表示(デフォルトは実行中のコンテナだけ表示) => 特に、起動していない時にどうなったかを確認する際に役立つ => 以下の関連記事にあるトラブルの調査で使った
Docker compose ~ depends_on ~
https://dk521123.hatenablog.com/entry/2025/10/25/220422
コマンド例
# すべてのコンテナ情報出力 docker ps -a
【2】docker logs / docker compose logs でログチェック
* 【1】で コンテナの状態を確認して 例えば、状態が「Restarting (1)」がずっと続く現象がでたので ログから原因を調査する等で利用できる => 因みに、原因は、権限エラーが内部でずっと続いていた
コマンド例
# Container ID を取得 docker ps # docker logs [CONTAINER ID] # docker container logs [CONTAINER ID] docker container logs xxxxxxx
1)docker logsコマンド / docker compose logsコマンド
* Docker コンテナのログ出力
コマンド例
# [Options] Docker image docker image pull httpd docker container run -d -p 18081:80 httpd # [1] CONTAINER IDを調べる docker ps # CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES # 2738d35917c1 httpd "httpd-foreground" 7 seconds ago Up 4 seconds 0.0.0.0:18081->80/tcp, :::18081->80/tcp wizardly_darwin # [2] docker logs 実行 # docker logs [CONTAINER ID] # docker container logs [CONTAINER ID] docker container logs 2738d35917c1
docker compose logs
# docker compose logs [SERVICE] docker compose logs backend # => 以下の関連記事にあるトラブルの調査で使った
Docker compose ~ depends_on ~
https://dk521123.hatenablog.com/entry/2025/10/25/220422
2)-fオプション
* リアルタイムでログを出す => Linux の 「tail -f (--follow)」的に使える
tailコマンド
https://dk521123.hatenablog.com/entry/2024/01/29/000000
コマンド例
# docker logs [CONTAINER ID] # docker container logs [CONTAINER ID] docker container logs -f xxxxxxx
【3】docker inspect で意図しているイメージになっているか確認
# コンテナIDを調べる docker ps # docker inspect (コンテナID) docker inspect xxxxxx
https://docs.docker.jp/engine/reference/commandline/inspect.html
【4】docker execでコンテナ内に入って調査
コンテナ起動しているが動きがおかしい場合、コンテナ内に入って調査
コマンド例
# Container Name を取得 docker ps # docker exec -it <コンテナ名> bash # -i (--interactive)は、標準入力を開き続ける # -t (--tty) は、コンテナ内で疑似的な仮想端末を割り当ててる docker exec -it xxxxx bash
【5】docker kill でコンテナを停止し、再度やり直してみる
* 開発環境なら、コンテナを停止し、再度やり直してみるのもあり
コマンド例
# Container IDを取得 sudo docker container ps # 実行を停止 # sudo docker kill 27f0c47e97eb でも可能 sudo docker container stop 27f0c47e97eb # 確認 sudo docker container ps
関連記事
Docker ~ 基礎知識編 ~
https://dk521123.hatenablog.com/entry/2020/04/24/160044
Docker ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2023/02/25/000000
Docker ~ 基本編 / dockerコマンド ~
https://dk521123.hatenablog.com/entry/2020/04/13/000000
Docker ~ 基本編 / docker container コマンド ~
https://dk521123.hatenablog.com/entry/2022/01/20/000000
Docker compose ~ depends_on ~
https://dk521123.hatenablog.com/entry/2025/10/25/220422
Docker に関するトラブル
https://dk521123.hatenablog.com/entry/2017/09/24/162257
Windows / Docker Desktop でのトラブルシューティング
https://dk521123.hatenablog.com/entry/2020/12/11/115814
Proxy環境下でdocker pullしたらエラー
https://dk521123.hatenablog.com/entry/2024/02/08/144941
tailコマンド
https://dk521123.hatenablog.com/entry/2024/01/29/000000