Docker(rails) - 服务器端代码的变化,需要重启应用程序

时间:2017-03-04 00:45:53

标签: ruby-on-rails docker

我使用的是Windows 10机器。我还运行了一个运行rails应用程序的docker容器。每当我更改任何服务器端代码(即控制器或模型)时,我都需要执行docker restart app。

然而,我的朋友在他的苹果机器上使用相同的容器,但是当他对任何服务器端代码进行更改时,他不必重新启动他的应用程序。

为什么会这样?

1 个答案:

答案 0 :(得分:2)

Rails有一个配置选项(config.cache_classes),用于指定应用程序代码是否应在请求之间的内存中缓存。将此选项设置为true会要求您在进行更改时重新启动应用;将其设置为false会在每次请求时重新加载您的代码,因此您不必重新启动。

建议仅在开发环境中将其设置为false,因为如果Rails每次开始处理代码时都不必重新加载代码,则Rails的运行速度会更快请求。在制作中,您应将其设置为true