在 Rails 上的 Ruby 中使用 Docker 时控制台打印未出现

Console prints not appearing when using Docker in Ruby on Rails

我一直在尝试使用 Docker 进行开发,它工作得很好,但让我烦恼的一件事是无法看到控制台打印。

Rails 服务器(完全相同的应用程序):

Started GET "/" for ::1 at 2015-10-14 22:18:28 +0200
Processing by PagesController#home as HTML
foobar
Rendered pages/home.html.erb within layouts/home (0.0ms)
Completed 200 OK in 20ms (Views: 19.7ms | ActiveRecord: 0.0ms)

Docker:

Started GET "/" for 192.168.99.1 at 2015-10-14 20:18:44 +0000
Processing by PagesController#home as HTML
Rendered pages/home.html.erb within layouts/home (0.1ms)
Completed 200 OK in 179ms (Views: 177.6ms | ActiveRecord: 0.0ms)

这些日志来自拖尾我容器中的 log/development.log 文件。

有没有其他人遇到过这种情况?如何解决这个问题?干杯!

我注意到这与拖尾非 Docker 项目无关 Docker。使用 WEBrick 时,putsprint 等日志记录工具会显示在您的控制台中,但不会添加到您的日志文件中。

解决这个问题的方法是使用 logger.info()