【问题标题】:docker 1.12 swarm : Does Swarm have a configuration store like kubernetes configMapdocker 1.12 swarm : Swarm 是否有像 kubernetes configMap 这样的配置存储
【发布时间】:2016-08-09 19:34:23
【问题描述】:

根据 kubernetes 文档:http://kubernetes.io/docs/user-guide/configmap/

Kubernetes 有一个包含键值对的 Co​​nfigMap API 资源 可以在 pod 中使用的配置数据。

这看起来是一个非常有用的功能,因为许多容器需要通过配置文件和环境变量的某种组合进行配置

docker1.12 swarm 有类似的功能吗?

【问题讨论】:

    标签: docker kubernetes docker-swarm


    【解决方案1】:

    遗憾的是,Docker(即使在 1.12 中使用 swarm 模式)不支持您可以使用 ConfigMaps 解决的各种用例(也没有 Secrets)。

    唯一支持的是 Docker 中的外部环境文件( https://docs.docker.com/engine/reference/commandline/run/#/set-environment-variables-e-env-env-file) 和撰写 (https://docs.docker.com/compose/compose-file/#/env-file)。

    这些可以很好地将配置排除在映像之外,但它们依赖于环境变量,因此您不能只将整个配置文件外部化(例如,用于 nginx 或 Prometheus)。此外,您不能独立于部署/服务更新 env 文件,这在 K8s 中是可能的。

    解决方法:您可以使用 env 文件中的这些变量来构建配置文件。

    我猜 Docker 迟早会添加这些功能。目前,Swarm 仍处于早期阶段,因此对于高级用例,您需要等待(中长期所有平台都将具有类似的功能),构建自己的 hack/woraround,或者使用具有这些东西的 K8s集成。

    旁注:对于秘密存储,我推荐 Hashicorp 的 Vault。但是,对于配置而言,它可能不是正确的工具。

    【讨论】:

    • 更新:Docker Swarm 现在支持 1.13 和更新版本的机密。但我认为不支持 ConfigMaps...
    猜你喜欢
    • 1970-01-01
    • 2018-02-12
    • 2017-01-18
    • 2022-06-20
    • 2018-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多