git – 在Laravel 5应用程序中应该将环境特定值保存在何处?
我试图围绕在Laravel 5中进行配置的.env方式. 这是我的故事:我正在将现有的Laravel 4应用程序转换为Laravel 5.我目前拥有不同的环境(本地和生产),并且级联配置系统运行良好.我在app / config下的单独文件夹中有我的环境特定应用程序配置. 我的应用程序目前在Docker容器中部署(和开发).为了构建部署,我使用Dockerfile来构建我的应用程序映像(基于我的主分支),然后将其推送到存储库并在生产服务器上提取. 所以现在我正在尝试将我的配置转换为Laravel 5,我有点困惑.我读到的所有内容都表示您将.env文件添加到.gitignore文件中,因此它不会包含在您的存储库中.我理解这样做的安全原因 – 不要将敏感的API密钥/密码/提交到您的存储库.但我不确定如果我的生成.env文件包含在我的构建步骤中,如果它不是存储库的一部分,我不知道如何确保. 我的想法是将我的生产.env文件放在我的开发环境之外的文件系统中,然后在需要时复制它. 这是管理这个的“最佳实践”吗?这是别人怎么做的? 谢谢! .env文件将包含您将在配置文件中使用env(‘variable’)应用的变量.最佳实践是在配置文件中设置任何与环境无关的参数(意味着它将同时适用于生产和开发),并在.env文件中设置任何与环境相关的变量
示例:在您的开发和登台服务器上,您将使用gmail smtp发送电子邮件,但在生产服务器上,您将使用自己的smtp服务器.只需按如下方式设置电子邮件配置: 配置文件:
.env关于dev和staging
.env关于生产
永远不要在你的git repo上包含.env文件.而是制作副本并将其命名为“.env.sample”并添加它.因此,一旦克隆了repo,您??的开发团队就可以设置自己的.env文件.您需要将.env添加到.gitignore以防止它添加到repo. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |