Philipp Garbe 在他的帖子 How to Run HuBot in Docker on AWS EC2 Container Services – Part 3 中描述了如何将您希望保密的环境变量传递给在 Amazon Web Services(beanstalk 或 ECS)上运行的公共 Docker 实例。诀窍是:
-
将它们放入您可以在 S3 上获取的
env.sh
文件(并允许适当的 EC2 IAM 角色访问它) -
作为启动 CMD 的一部分,运行
aws s3 cp
来获取并获取它
这是他的 Dockerfile 中的 CMD 示例:
CMD ["/bin/sh", "-c", "aws s3 cp --region eu-west-1 s3://your-bucket/env.sh .; . ./env.sh; bin/hubot --adapter slack"]
在他的 GitHub 存储库中查看完整的源代码 。感谢分享,菲利普!