【问题标题】:Strapi - Configure with environment variablesStrapi - 使用环境变量进行配置
【发布时间】:2016-08-11 21:12:59
【问题描述】:

使用strapi 1.5.4

是否可以使用环境变量配置strapi? 如果没有,你如何配置strapi而不提交/暴露你的数据库凭据和其他秘密?

module.exports = {
  "orm": {
    "adapters": {
      "disk": "sails-disk",
      "mysql": "sails-mysql"
    },
    "defaultConnection": "default",
    "connections": {
      "default": {
        "adapter": "disk",
        "filePath": ".tmp/",
        "fileName": "default.db",
        "migrate": "alter"
      },
      "permanent": {
        "adapter": "mysql",
"user": process.env.DB_USER,
"password": process.env.DB_PASSWORD,
        "migrate": "alter"
      }
    }
  }
};

【问题讨论】:

    标签: javascript node.js configuration environment strapi


    【解决方案1】:

    看起来唯一的方法是使用钩子。 在我的server.js 文件中(我会将配置移动到它自己的文件中并清理它)

    const orm = {
      "adapters": {
        "disk": "sails-disk",
        "mysql": "sails-mysql"
      },
      "defaultConnection": "default",
      "connections": {
        "default": {
          "adapter": "disk",
          "filePath": ".tmp/",
          "fileName": "default.db",
          "migrate": "alter"
        },
        "permanent": {
          "adapter": "mysql",
          "user": process.env.DB_USER || 'root',
          "password": process.env.DB_PASSWORD || 'password',
          "database": process.env.DB_NAME || 'test',
          "host": "127.0.0.1",
          "migrate": "alter"
        }
      }
    };
    
    (function () {
      const strapi = require('strapi');
      // Use a hook to override the config
      strapi.on('hook:_config:loaded', () => {
        strapi.config.orm = orm;
      });
      strapi.start();
    })();
    

    【讨论】:

      【解决方案2】:

      你可以使用这个插件来管理你的秘密:https://github.com/cyberark/summon 上面的插件将为您的秘密值提供更多抽象,并且它们也支持providers

      【讨论】:

        【解决方案3】:
        猜你喜欢
        • 2016-12-10
        • 2013-02-09
        • 2021-11-04
        • 1970-01-01
        • 2013-11-13
        • 2018-01-22
        • 2020-02-22
        • 2022-08-13
        • 2017-05-27
        相关资源
        最近更新 更多