Docker主机的弹性Beanstalk环境变量

我有一个EB env与Docker Web应用程序(rails)正确部署.我设置了几个EB env变量,它们在容器中正确显示.现在 – 我希望这些EB env变量对EC2实例主机可见,以便我可以在docker构建过程中使用它们.但是,它们不会暴露于码头主机,只能到容器.
如何将EB env变量公开给Docker主机?

最佳答案
我遇到同样的问题,但是在执行后部署Bash脚本时需要使用环境变量.

由于jq parser可用于(当前)Amazon Linux AMI,因此我可以使用它来处理类似的东西来解析JSON,然后导出主机上的环境变量(这是从ebextensions config file摘录):

files:
  "/opt/elasticbeanstalk/hooks/appdeploy/post/export_env_vars_on_host.sh":
  mode: "000755"
  owner: root
  group: root
  content: |
    #!/usr/bin/env bash
    echo Defaults:root \!requiretty >> /etc/sudoers
    for envvar in `jq '.optionsettings | {"aws:elasticbeanstalk:application:environment"}[] | .[]' /opt/elasticbeanstalk/deploy/configuration/containerconfiguration`
    do
      temp="${envvar#\"}";
      temp="${temp/=/=\"}";
      export temp;
    done

相关文章

Docker是什么Docker是 Docker.Inc 公司开源的一个基于 LXC技...
本文为原创,原始地址为:http://www.cnblogs.com/fengzheng...
镜像操作列出镜像:$ sudo docker imagesREPOSITORY TAG IMA...
本文原创,原文地址为:http://www.cnblogs.com/fengzheng/p...
在 Docker 中,如果你修改了一个容器的内容并希望将这些更改...
在Docker中,--privileged 参数给予容器内的进程几乎相同的权...