下記のように Dockerfile
があります
CMD ["python", "/app.py"]
app.py
にこんな処理があります:
print 'some log'
docker run
で起動します:
docker run -d xxx
Logをみます:
docke logs -f yyy
なかなか期待の Log が出てきません。
調べたところ、Python による標準出力のバッファーのが原因だそうです。
バッファーをしなくて直ちに Log を見たい場合、 python -u
でアプリを起動すればいいことです。
下記のように修正したら、 docker logs
も無事に Log を見ることができました。
CMD ["python", "-u", "/app.py"]