加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 如何处理env变量的数量

发布时间:2020-12-13 22:55:59 所属栏目:Linux 来源:网络整理
导读:虽然我的理解是使用环境变量来配置不同部署环境中的应用程序是最佳实践,但我不知道管理这些环境并在其中填充变量的好方法. 以下是我正在考虑的方法: 在我们用来运行我们的应用程序的Upstart脚本中填充它们.我们使用Ansible来配置我们的服务器,这些服务器当
虽然我的理解是使用环境变量来配置不同部署环境中的应用程序是最佳实践,但我不知道管理这些环境并在其中填充变量的好方法.

以下是我正在考虑的方法:

>在我们用来运行我们的应用程序的Upstart脚本中填充它们.我们使用Ansible来配置我们的服务器,这些服务器当前通过静态新贵的脚本进行复制,但是这可以通过环境变量进行模板化.
>相同的方法,但使用/ etc / environment
>使用类似envdir的东西,再次使用ansible填充文件.

另一个问题是存储价值的地方,我在想redis,但我愿意接受建议. Ansible有一个“保险柜”,我还没看到,这可能是一个选择.

值是API密钥和数据库URL.

我真的只是想知道其他人使用什么方法.我对所有建议持开放态度.

解决方法

我认为这个问题会征求很多意见,可能还会提出很多相互矛盾的意见,但有人说这是我的一些看法:

> / etc / environment是操作系统的一部分,用于配置交互式用户shell.不要将它用于应用程序.
>通过ansible的模板化新贵配置对我来说似乎很合理.如果您打算在那里存储敏感数据,请确保文件系统权限被适当锁定为root只读.
>您还可以使用模板化的特定于应用程序的配置文件,例如/ etc / myapp / config,这对于许多程序来说已经有好几十年了.整个环境 – 变量 – 优于配置文件的位置实际上更多来自PaaS视角(heroku我相信通过他们的12因素应用程序网站推广这种方法).因此,如果您的部署是PaaS或PaaS风格,那么环境很方便.但是,如果您通过Ansible在自己的服务器上安装应用程序,恕我直言,直接配置文件更容易排除故障,原因我在博客environment variables considered harmful中概述

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读