使用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"
}
}
}
};
答案 0 :(得分:2)
看起来唯一的方法是使用钩子。
在我的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();
})();
答案 1 :(得分:0)
您可以使用此插件来管理您的机密:https://github.com/cyberark/summon 上面的插件将为您的秘密值提供更多抽象,它们也受providers一堆的支持。
答案 2 :(得分:0)