首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用ansible-vault部署敏感数据

使用ansible-vault部署敏感数据
EN

Stack Overflow用户
提问于 2020-10-03 01:27:11
回答 1查看 197关注 0票数 0

我想使用Ansible和Ansible-Vault部署一个包含敏感数据的docker-compose应用程序。Ansible将存储库克隆到服务器,将其移动到适当的位置,并启动Docker容器。该应用程序包含环境变量位于docker-compose.yaml文件的子路径中的敏感文件。

如何隐藏文件中的敏感部分,而保持其余部分不变?我知道,变量可以使用ansible-vault加密,并在Ansible内部调用,但我需要在服务器上以明文形式调用它们。还是有别的办法?

基本上,我希望在docker-compose应用程序的存储库中保留尽可能多的信息,并且只使用Ansible部署敏感数据。我想简单地将所有环境文件放在Ansible中,并加密敏感部分,但这个解决方案将信息分割到两个存储库中,这是我不喜欢的。

EN

回答 1

Stack Overflow用户

发布于 2020-10-03 10:42:49

docker-compose文件支持reading environment variables from a file,因此,我猜您可能只想按原样复制docker撰写文件,该文件只包含明文,然后写出包含使用ansible-vault加密的秘密的环境文件

给定一个包含以下内容的docker:

代码语言:javascript
复制
services:
  hello:
    image: busybox
    env_file:
    - /run/hello.env

那么剧本应该看起来像这样:

代码语言:javascript
复制
tasks:
- copy:
    dest: /run/hello.env
    content: |
       SUPER_SEKRIT={{ the_vaulted_value }}
    mode: '0600'

我实际上没有尝试过这个具体的解决方案,所以这就是为什么我说“像这样”的原因。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64175865

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档