sails.js - 内部 'production' 设置或配置

sails.js - internal 'production' settings or configuration

我目前 运行 一个具有多个生产环境的 sails.js (0.12.3) 应用程序。我想使用一组 /config/env(即 /config/env/production-eu.js、/config/env/production-us.js)文件而不是 /config/env /development.js & /config/env/production.js 每个服务器手动管理 local.js。 sails documentation 状态:

The production environment is special-- depending on your configuration, it enables compression, caching, minification, etc.

我知道 'production' 在 运行 运行 rails 应用程序时意味着什么。我的问题是 - 如果不使用推荐的 'production' 环境名称 运行ning sails.js,我会丢失任何 internal/automagical settings/features 吗?

在我看来,"production" 环境是一个抽象,位于您的两个自定义之上。

我认为更好的方法是使用 Node 环境变量作为默认生产配置的自定义。

您可以使用 dotenv 等工具将节点环境变量注入您的 sails 应用程序,然后从您的通用生产配置文件中指向它们。

My question is - are there any internal/automagical settings/features that I would be missing by not using the recommended 'production' environment name running sails.js?

是的,设置为 production 的环境 (NODE_ENV) 有特殊设置。 请参阅 productionSails & Express

中的用法

为了解决您的用例,引入一个新的环境变量,比如 NODE_LOCALE

NODE_LOCALE=us sails lift

export NODE_LOCALE=us
sails lift

需要 production.js 中的区域设置文件之一,具体取决于环境:

var localeFile;
switch(process.env.NODE_LOCALE) {
  case 'eu':
    localeFile = './production-eu';
    break;
  case 'us':
  default:
    localeFile = './production-us';
}

module.exports = require(localeFile);