欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

Docker Swarm集群secrets中管理敏感数据

发布时间:2025/6/17 编程问答 9 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Docker Swarm集群secrets中管理敏感数据 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

在Swarm集群中管理敏感数据

以往管理敏感数据的姿势通常是 密钥放镜像中、设置环境变量、volume动态挂载等。Docker目前提供了secrets管理功能,用户可以在Swarm集群中安全地管理密码、密钥证书等铭感数据,并允许在多个Docker容器实例之间共享访问指定的敏感数据。

Ps: secret 可以在Docker Compose中使用。

 

创建secret

openssl rand -base64 20 | docker secret create xxxxpassword -

然后docker secret ls查看结果

 

然后在创建服务的时候可以这么引入(随便起一个redis)

docker service create \

--name redis \

--secret source=xxxxpassword,target=xxxxpassword \

redis:3.0.6

 

一但出现--secret引入,并且如果target不写路径就会默认在容器的

/run/secrets 下生成文件,比如上面的那个redis,创建之后直接 docker exec -it xxxxx bash

登录上去之后,cd到/run/secrets下:

 

也可以在docker-compose.yml里面用,如下:

 

执行这个安装docker stack deploy -c docker-compose.yml nginx

 

Ps: 注意格式,注意版本号别太低。

docker exec -it xxx bash 登录到容器上之后

 

还有就是如果是上面的secret相关都是通过命令行creat创建的,如果是本地文件的话,yml文件可以这么写:

 

我重新部署了一遍。最终在容器上(注意是跑起来的容器里面)可以看到这个

 

OK secret相关就整理到这。书上的例子既复杂又跑不起来,折腾了好久。上面的例子是我自己简化的。希望能理解用法。

 

总结

以上是生活随笔为你收集整理的Docker Swarm集群secrets中管理敏感数据的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。