Skip to main content

第10章:ミニまとめ:1人で「動かして直して片付け」できる🎓🎉

この章は“総合リハーサル回”です🔁✨ 起動 → 状態確認 → ログ → 中を見る → 停止 → 削除 → 掃除 を、手を動かして1周します💪🐳


0) 今日のゴール(これができたら合格✅)🏆

  • コンテナを名前つきで起動できる🚀
  • 困ったらまず 状態(ps)→ログ(logs)→中(exec) の順に見れる👀🧠
  • 最後に止めて消して掃除まで、自分で完走できる🧹✨

1) まずは“1周コース”の地図🗺️🐾

今回の流れはこれ👇(覚えるというより、毎回これで回すのが大事!)

  1. バージョン確認(保険)🧾
  2. コンテナ起動(detach + port + name)🚀
  3. 状態を見る(ps / ps -a)👀
  4. ログを見る(tail / follow / since)🪵
  5. 中を見る(execで確認コマンド)🔦
  6. 止める(stop)⏹️
  7. 消す(rm / prune)🗑️
  8. 片付け(system pruneの意味を理解して使う)🧽

2) ハンズオン:運用“1周コース”をやる🔁🐳

2-1) バージョン確認(最初の保険🧯)

「今の自分のDocker、ちゃんと喋れる?」を確認します🙂

docker version
docker compose version

docker compose が基本形です(Compose v2は docker compose で呼び出す形)(Docker Documentation)


2-2) コンテナ起動(名前を付けて、裏で動かす🚀)

まずは“練習用コンテナ”を立ち上げます。 ここでは例として nginx:alpine を使います(ログも見やすくて練習向き!)😄

docker run --name todo-api -d -p 3000:80 nginx:alpine

ポイント👆

  • --name todo-api:あとから操作しやすい✨
  • -d:裏で動く(ターミナルが戻る)
  • -p 3000:80:ホストの3000 → コンテナの80へ繋ぐ🔌

2-3) 状態を見る(ps / ps -a)👀📋

今動いてる?落ちてる?を最速で判断🔥

docker ps
docker ps -a

docker ps は“動いてるやつだけ”、止まってるのも見たいなら -a です🙂(Docker Documentation)


2-4) ログを見る(logsが主役🪵👑)

「困ったら logs」 を身体に叩き込みます😤✨

まずは直近だけサクッと👇

docker logs --tail 50 todo-api

リアルタイム追跡(Ctrl+Cで停止)👇

docker logs -f --tail 50 todo-api

「直近5分だけ見たい」みたいなのもできます👇

docker logs --since 5m --tail 200 todo-api

--since は「指定以降のログだけ」にできて、--follow--tail と組み合わせOKです🙂(Docker Documentation)


2-5) 中を見る(execで“現場検証”🔦)

コンテナの中で「本当にそうなってる?」を確かめます🕵️‍♂️✨

docker exec -it todo-api sh

入れたら、最低限これだけ見れれば強い💪

## (コンテナの中)
uname -a
ls -la
ps aux | head

docker exec は「動いてるコンテナの中でコマンドを実行」できます。-it が対話モードの定番です🙂(Docker Documentation)

もし “中がスリムすぎてツールが無い!” みたいな時は、最近は docker debug という選択肢もあります(おまけ知識)🧰✨(Docker Documentation)


2-6) 止める(stop)⏹️

止める=いきなりブチ切りじゃなくて、基本は「終了お願いね」から入ります🙂

docker stop todo-api

内部プロセスにまず SIGTERM、猶予後に SIGKILL という流れです(猶予は --timeout で調整可能)(Docker Documentation)


2-7) 消す(rm / prune)🗑️

止まったら消せます!

docker rm todo-api

「止まってるコンテナが溜まってきた〜😵」なら、まとめて掃除👇

docker container prune

docker container prune は“停止済みコンテナを一括削除”です🙂(Docker Documentation)


2-8) 片付け(system pruneの意味を理解して使う🧽)

最後に“散らかったもの”を掃除します🧹✨

docker system prune

これで主に「停止済みコンテナ、使われてないネットワーク、ぶら下がりイメージ、ビルドキャッシュ」などが対象になります⚠️(Docker Documentation) そして大事ポイント👇

  • ボリュームはデフォルトでは消えません(消すには --volumes が必要)(Docker Documentation)

3) “困った時の3手”テンプレ🧯📌

トラブルが起きたら、だいたいこれで7割勝てます😤✨

  1. 動いてる?
docker ps
docker ps -a
  1. 何が起きた?(ログ)
docker logs --tail 200 <name>
docker logs -f --tail 50 <name>
docker logs --since 5m --tail 200 <name>
  1. 中で何が見える?(exec)
docker exec -it <name> sh

4) 卒業チェック(セルフ採点✅)🎓

できたらチェック入れてね😆✨

  • docker run --name ... -d -p ... が迷わず打てた🚀
  • docker psdocker ps -a の違いを説明できた👀
  • docker logs --tail-f--since を使い分けできた🪵
  • docker exec -it ... sh で中に入って ls / ps を見れた🔦
  • docker stopdocker rm まで自分で完走できた⏹️🗑️
  • docker system prune が“何を消すか”を理解して使えた🧽

5) AI活用:弱点診断プロンプト集🤖💬

「自分のどこが不安か」をAIに言語化させると、伸びが爆速になります⚡😆

プロンプト例(コピペOK)👇

次のDocker操作ログ(コマンドと出力)を貼るので、
1) いま起きていることを一言で
2) 次に確認すべき順番(最大5手)
3) やってはいけない危険操作
を短く教えて。初心者向けにお願いします。
docker ps / docker ps -a の出力を貼るので、
「この状態だと次に何をすべきか」を3パターン(正常/異常/片付け)で提案して。
docker logs を貼るので、
“重要そうな行トップ5”と“そこから考えられる原因候補トップ3”を出して。
(TypeScript/NodeのAPI想定でOK)

6) 余裕があったら(おまけ筋トレ🏋️‍♂️✨)

  • 動いてるコンテナの負荷を見る(重い/固まるの入口チェック)

    docker stats

    docker stats はリソース使用量をストリーム表示できます🙂(Docker Documentation)

  • Composeに入る前の予告:今後は docker compose logs みたいに“まとめて見る”世界に入っていきます📦📦📦 docker compose logs にも --since / --tail / --follow があります🙂(Docker Documentation)


ここまでできたら、もう「Docker触るの怖い😵」は卒業です🎉🐳 次の第11章からは、開発で一気に楽になる**ファイル共有(マウント)**に突入します📁⚡