本文へスキップ
BecomeCoder

Dockerコース · 第3章 コンテナを動かす・止める · レッスン9

logs と exec ― 中をのぞく

ブラウザで完結

導入

動いているコンテナの様子を知るには、ログを見る docker logs と、コンテナの中でコマンドを実行する docker exec を使います。トラブル調査の基本です。

説明

  • docker logs <名前|ID>:コンテナが標準出力に吐いたログを表示する。サーバーの起動メッセージやエラーを確認できる。
  • docker exec -it <名前|ID> <コマンド>:動作中のコンテナの中でコマンドを実行する。-it を付けて shbash を渡すと、コンテナ内のシェルに入って対話操作できる。
docker logs web              # web コンテナのログを見る
docker exec -it web sh       # web コンテナの中のシェルに入る
docker exec web whoami       # コンテナ内で whoami を1回だけ実行

exec は「すでに動いているコンテナ」に対して使います。止まっているコンテナには使えない点に注意してください(先に docker start が必要)。

やってみよう

  • まず docker run -d -p 8080:80 --name web nginx で web を起動しましょう。
  • docker logs web でログを確認し、docker exec web whoami でコンテナ内のユーザー名(root)を表示してみましょう。

実際に動かしてみよう

下の端末に docker コマンドを打って Enter を押すと、その場で結果が返ります。本文の手順を実際になぞりながら進めましょう(各レッスンは毎回まっさらな状態から始まり、「最初からやり直す」でいつでも戻せます)。

Docker(シミュレート)

ブラウザ内で docker コマンドを試せる学習用環境を読み込みます(本物のDockerではなく、動きを再現したものです)。
スクロールして表示された時点でも自動で読み込まれます。