尽管一切看似正确,但乘客仍在生产中运营?

时间:2015-04-28 17:58:06

标签: ruby-on-rails docker passenger

我在Phusion提供的Docker容器(https://github.com/phusion/passenger-docker)中运行Passenger,并使用以下命令将我的Rails环境设置为开发设置:

docker run -rm -p 80:80 -e RAILS_ENV=development <image_name>

但是,乘客继续只在生产模式下运行。会导致这种情况的原因是什么?

1 个答案:

答案 0 :(得分:1)

原来问题是,在这个容器中运行的Passenger没有收听RAILS_ENV的环境变量,它只监听PASSENGER_APP_ENV。它使用该环境变量来调整nginx.conf文件。您可以在此文件(https://github.com/phusion/passenger-docker/blob/master/image/config/30_presetup_nginx.sh

中看到这种情况

设置BOTH变量解决了问题(其他工具仍在使用RAILS_ENV)。

docker run -rm -p 80:80 -e RAILS_ENV=development -e PASSENGER_APP_ENV=development <image_name>