36. docker swarm docker secret 的使用和管理
1.secret management 的作用
用来存储 其他人不想看到 的数据
2.secret management
存在 swarm manager 节点 raft database 里。
secret 可以 assign 给一个 service (or container), 这个 sevice 就能看到这个secret了
在 container 内部 secret 看起来像文件, 但实际是在内存中
3. secret 的 操作
创建
从文件内创建
vim password
#password 内容
123456a
创建 secret
docker secret create my-pass password

删除 password 文件
rm -rf ./password
从命令行输入创建
echo '123456a' | docker secret create my-pass2 -

查看
docker secret ls
删除
docker secret rm my-pass2
4. secret 的使用
创建 service 的时候指定 secret
docker service create --name client --secret my-pass busybox sh -c "while true; do sleep 3600; done"
查看 service 服务器 位置
docker service ps client
在 指定服务器 查看 container id
docker ps
进入容器
docker exec -it [container_id] sh
查看指定的密码
cat /run/secrets/my-pass
5. mysql 案例
创建 mysql service 指定文件根目录 密码文件为 /run/secrets/my-pass
docker service create --name db --secret my-pass -e MYSQL_ROOT_PASSWORD_FILE=/run/secrets/my-pass mysql:5.7.27
查看所在服务器位置
docker service ps db
在 指定服务器 查看容器id 并进入
docker ps
docker exec -it [container_id] sh
查看docker secret 密码 并 进入mysql
cat /run/secrets/my-pass
mysql -uroot -p[my-pass]
或简写为:
mysql -uroot -p$(cat /run/secrets/my-pass)
6. 在 docker stack 中的使用
编辑 docker-compose.yml
在各个 service 下添加
secrets 参数 和 environment 参数
eg:
services:
web:
image: wordpress
secrets:
- my-pass
environment:
WORDPRESS_DB_HOST: mysql
WORDPRESS_DB_PASSWORD_FILE: /run/secrets/my-pass
...
eg: docker-compose.yml
version: '3.1'
services:
db:
image: mysql:5.7.27
volumes:
- db_data:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD_FILE: /run/secrets/db_root_password
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD_FILE: /run/secrets/db_password
secrets:
- db_root_password
- db_password
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8888:80"
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD_FILE: /run/secrets/db_password
secrets:
- db_password
secrets:
db_password:
file: password.txt
db_root_password:
file: password.txt
volumes:
db_data:
6. 根据上述的 docker-compose.yml 创建 service
docker stack deploy wordpress -c=docker-compose.yml
查看 mysql 所在的服务器
docker service ls
docker service [container_name | container id]
查看所在服务器的 容器 id
docker ps
进入 mysql 容器
docker exec -it [container_id] /bin/bash
mysql -uroot -p[your setting password]
能登陆即可
或能访问 192.168.205.10 也行
36. docker swarm docker secret 的使用和管理的更多相关文章
- Dockerfile & Docker Swarm & Docker Stack & Docker Compose
Dockerfile 通俗地讲,它是为了指导单个镜像从无到有的构建过程.如果你镜像是从Docker registry上面拉下来的,那就用不到这个文件:如果你是自己的应用,想打包成镜像,那就需要这个文件 ...
- 37. docker swarm docker service 的更新
在service 运行的情况下 进行更新 1. 创建 名为 demo 的 overlay 网络 docker network create -d overlay demo 2. 创建 python-f ...
- Docker集群管理(三)—— docker swarm mode基础教程
docker从1.12版(及后续版本)集成了swarmkit.可以方便的实现docker集群.它有哪些特点呢: 集成了集群功能 分散设计:manager和worker两种节点. 声明式服务模式 可伸缩 ...
- Docker 三剑客之 Docker Swarm
上一篇:Docker 三剑客之 Docker Compose 阅读目录: Docker Machine 创建 Docker 主机 Docker Swarm 配置集群节点 Docker Service ...
- Docker,Docker Compose,Docker Swarm,Kubernetes之间的区别
Dcoker Docker 这个东西所扮演的角色,容易理解,它是一个容器引擎,也就是说实际上我们的容器最终是由Docker创建,运行在Docker中,其他相关的容器技术都是以Docker为基础,它是我 ...
- docker swarm 搭建与服务更新
一,docker swarm 是什么 Docker Swarm.Docker Machine与Docker Compose号称Docker三剑客Docker Swarm 和 Docker Compos ...
- Docker Swarm 高可用详解
Docker Swarm 高可用详解 Manager管理节点宕机后其他管理节点仍然可以使用管理 intermal distributed state store:内部分布式状态存储同步共享到每个节点. ...
- Docker compose 与 Docker swarm
安装 docker :https://www.cnblogs.com/klvchen/p/8468855.html 安装 docker-compose : https://www.cnblogs.co ...
- docker --swarm创建一个集群
如果搭建错误可以强制脱离集群网络: docker swarm leave --force 初始化集群网络管理节点: docker swarm init --advertise-addr 10.101. ...
随机推荐
- 2018年Android面试题含答案--适合中高级(下)(转)
这里是我整理出来的 面试题,答案我花了很久的时间.加上我自己的理解整理出来的,作者不易,请谅解.有答案的的:https://xiaozhuanlan.com/topic/6132940875 1. ...
- Oracle SQL存储过程结构、异常处理示例
-- 存储过程结结构. -- EXCeption不是存储过程必须部分,可以用作本存储过程的异常处理,但如果没有异常处理,出了异常将会终止程序 CREATE PROCEDURE procedure_na ...
- SpringBoot#InitBinder
__震惊!!我的天啦,OMG!! 1. initBinder对我而言的价值在于,通过传统表单post数据到后端的controller时候,数据类型的自动转换.比如前端页面填写一个日期字符串,通过Ini ...
- Android数据库(sqlite)之Room
说在前面: 1.使用Room需要添加的依赖: dependencies { def room_version = "2.2.3" implementation "andr ...
- POJ 1276:Cash Machine 多重背包
Cash Machine Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 30006 Accepted: 10811 De ...
- HDU 5285:wyh2000 and pupil
wyh2000 and pupil Accepts: 93 Submissions: 925 Time Limit: 3000/1500 MS (Java/Others) Memory Lim ...
- 10 —— node —— 获取文件在前台遍历
思想 : 前台主动发起获取 => ajax 1,前台文件 index.html <!DOCTYPE html> <html lang="en"> &l ...
- zabbix 日志
/var/log/zabbix/ tail -f /var/log/zabbix/zabbix_server.log tail -f /var/log/zabbix/zabbix_agentd.log
- POJ 2771 最大点独立集
这是经典的最大点独立集 还是可以转化成最大匹配数,为什么呢,因为求出最大匹配数之和,匹配的边的两个端点互斥,只能去一个,所以最后结果就用总点数-最大匹配数即可 #include <iostrea ...
- SASS - 环境搭建
SASS – 简介 SASS – 环境搭建 SASS – 使用Sass程序 SASS – 语法 SASS – 变量 SASS- 局部文件(Partial) SASS – 混合(Mixin) SASS ...