Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails JELASTIC上运行的应用程序中rails环境存在问题_Ruby On Rails_Nginx_Passenger_Jelastic - Fatal编程技术网

Ruby on rails JELASTIC上运行的应用程序中rails环境存在问题

Ruby on rails JELASTIC上运行的应用程序中rails环境存在问题,ruby-on-rails,nginx,passenger,jelastic,Ruby On Rails,Nginx,Passenger,Jelastic,我已经在JELASTIC上部署了服务器。问题是,如果我进行部署,/etc/nginx/ruby.env中的rails_env将在ROOT上自行设置,而不是我想要的生产。然后我的应用程序崩溃,因为rails在database.yml中看不到根环境。情况是我不想在database.yml上添加ROOT。我想让它尽可能干净,所以我想在生产环境中部署我的应用程序。 当我点击“编辑项目”时,我得到了如下内容: 这表示上下文生产已经在使用中(事实上,这是因为该应用程序是在生产模式下部署的,就像您在上一个屏

我已经在JELASTIC上部署了服务器。问题是,如果我进行部署,/etc/nginx/ruby.env中的rails_env将在ROOT上自行设置,而不是我想要的生产。然后我的应用程序崩溃,因为rails在database.yml中看不到根环境。情况是我不想在database.yml上添加ROOT。我想让它尽可能干净,所以我想在生产环境中部署我的应用程序。 当我点击“编辑项目”时,我得到了如下内容:

这表示上下文生产已经在使用中(事实上,这是因为该应用程序是在生产模式下部署的,就像您在上一个屏幕中看到的)。当我不选择任何应用程序部署类型时,我有一个带有根占位符的空白selectbox(这显然被用作部署类型,因为ruby.env中的rails_env是这样设置的)

我还尝试从部署管理器部署应用程序:

允许我选择环境和部署类型以及 告诉我这个上下文已经在使用中,如果我想重新部署上下文

但它也作为根目录部署,我必须手动更改nginx ruby.env并重新启动nginx以使其工作

你知道我做错了什么吗? 有什么建议吗

还有两个问题,为什么部署钩子不保存(例如,即使我删除了以前的钩子并替换为简单的“echo”,它也会运行以前的钩子)


最后一个问题是,我能否以某种方式创建名为“staging”的新部署类型,因为我们知道“development”、“production”和“test”用于其他类似staging的事情。我需要用于其他目的的暂存,例如禁用客户端测试服务器的邮件程序。

此外,我在生产模式下部署了应用程序,它的“显示”了生产环境的钩子,但在部署后运行根环境的钩子(签入/var/lib/jelastic/hooks目录)。我们无法在测试环境中重现部署问题和挂钩问题。看起来这是一个特殊的情况,或者我们用错误的方式复制。请写信给我们填写表格,以便我们可以仔细查看您的环境。另外,我在生产模式下部署了应用程序,它的“显示”了生产环境的挂钩,但在部署后运行根环境的挂钩(签入/var/lib/jelastic/hooks目录)。我们无法在测试环境中重现部署问题和挂钩问题。看起来这是一个特殊的情况,或者我们用错误的方式复制。请写信给我们填写表格,以便我们可以仔细观察您的环境。