#author("2021-01-15T09:08:50+09:00","default:nobuoki","nobuoki") #author("2021-01-15T09:13:23+09:00","default:nobuoki","nobuoki") * はじめに [#s9e420fc] podman でコンテナログをファイルに吐き出そうとしたが、ちょっと癖があることに気づいたのでメモ * 例 [#u273240d] カレントディレクトリに存在する hello.rb を実行したときのログを、json 形式で特定のパス(/tmp/mycontainer.json)に出力させる #prism(bash){{{ podman run \ --log-driver=k8s-file --log-opt path=/tmp/mycontainer.json \ -v $(pwd):/app \ -w /app \ ruby:alpine \ ruby hello.rb }}} * ポイント [#k1048d80] - log-driver には(docker で言うところの json-file ではなくて) ''k8s-file'' を指定する - ログ出力パスを log-opt で指定する -- log-opt を指定しない場合、ログ出力パスは docker inspect で取得する ログ出力パスの取得例 #prism(bash){{{ $ podman inspect --format '{{.LogPath}}' inspiring_feynman # コンテナ名: inspiring_feynman /home/nobuoki/.local/share/containers/storage/overlay-containers/c01e8ec014baa9d7f34f8bb5acf8d76bf400f88e6e110302b0784d1512c08b51/userdata/ctr.log }}} * 肝心のログ [#ydff2032] json 形式ではないです残念 #prism(bash){{{ $ cat $(podman inspect --format '{{.LogPath}}' inspiring_feynman) 2021-01-15T08:38:58.704885606+09:00 stdout F hello }}} * 参考 [#ia267594] - [[podman/podman-run.1.md at master · containers/podman · GitHub>https://github.com/containers/podman/blob/master/docs/source/markdown/podman-run.1.md]] - [[コンテナ運用におけるログ基盤設計のベストプラクティス - Qiita>https://qiita.com/naomichi-y/items/6eeebd21adf8e771a8e7]]