如何在Digital Ocean的云配置文件中设置系统范围的环境变量

Bti*_*rt3 7 environment-variables digital-ocean

我对设置远程服务器很陌生,但我今天玩得很开心,希望我可以在设置时利用云配置文件,以便在服务器启动时设置一些环境变量。

在 Digital Ocean 上启动机器时,如何以编程方式设置环境变量?关键是我想自动化设置并避免以交互方式定义这些变量。

提前致谢。

dan*_*gel 10

这就是我为 ubuntu 所做的

write_files:
- path: /etc/environment
  content: |
    FOO="BAR"
  append: true
Run Code Online (Sandbox Code Playgroud)


Dan*_*701 4

尽管Cloud Init不支持环境变量的内置资源类型,但有多种方法可以实现此目的。

  1. 根据您的操作系统,使用一个write-files部分将您想要的环境变量输出到适当的文件。对于 CoreOS,您可以执行以下操作:

    write_files:
        - path: "/etc/profile.env"
          append: true
          content: |
            export MY_VAR="foo"
    
    Run Code Online (Sandbox Code Playgroud)

对于 Ubuntu,使用/etc/environment或用户的个人资料等。

  1. 另一种方法是利用 Cloud Init 对 Chef 的支持,并在应用配置文件时使用该工具设置变量。

  • 不推荐,这会覆盖环境变量文件。使用 `append: true` 来防止这种情况 (5认同)