随笔分类 - 每天五分钟学Docker
跟着CloudMan《每天5分钟玩转 Docker 容器技术》学习Docker
https://www.cnblogs.com/CloudMan6/tag/Docker/default.html?page=10
摘要:参考https://www.cnblogs.com/CloudMan6/p/8157391.html stack 将应用所包含的service,依赖的secret volume 等资源,以及他们之间的关系定义在一个YAML文件中。相比手工执行命令或是脚本,stack有明显的优势。 1、YAML 描述
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/8135714.html 定义好了 stack YAML 文件,就可以通过 docker stack deploy 命令部署应用,命令最后面的wpstack 是自动创建各项资源的前缀,方便区分不同的环境 root@host0
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/8119150.html 什么是 stack ? 在将这个之前先回顾一下前面部署WordPress的过程: 1、创建secret 2、创建mysql service 3、创建WordPress service 也就是说,这个
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/8098761.html 在下面的例子中,我们会部署一个 WordPress 应用,WordPress 是流行的开源博客系统。 我们将创建一个 Mysql Service ,将密码保存到secret 中。我们还会创建一个 W
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/8082429.html 我们可以用secret管理任何敏感数据。这些敏感数据是容器在运行时需要的。同时我们又不想把这些数据保存到镜像中。 secret可以用于管理: 1、用户名和密码 2、TLS证书 3、SSH密钥 4、其
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/8068057.html 我们经常要想容器传递敏感信息,最常见的就是密码。比如: docker run -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql docker run -e M
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/8053323.html 容器状态是UP的,那应用就是健康的吗? 不一定 Docker 只能从容器启动进程的返回代码判断其状态,而对于容器内部应用的运行情况基本没有了解。 执行 docker run 命令时,通常会根据Doc
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/8038799.html 上一节我们讨论了 Service部署的两种模式,global mode 和 replicated mode 。无论global mode 还是replicated mode ,副本运行在哪些节点都是
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/8028712.html Swarm 可以在 Service 创建和运行过程中灵活的通过 --replicas 调整容器副本数量,内部调度器则会根据当前集群的资源使用情况在不同的node 上启停容器,这就是 Service
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/8016994.html 上一节我们成功将 nfs 的volume挂载到 Service上,本节验证 Failover时,数据会不会丢失。 Scale Up 增加副本,并验证数据是否能够同步到新启动的容器上 root@hos
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/8000906.html Service 的容器副本会 scale up/down ,会 failover,会在不同的主机上创建和销毁,这就引出一个问题,如果Service有要管理的数据,那么这些数据应该如何存放呢? 选项一
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/7988455.html 在前面的实验中,我们部署了多个副本的服务,本节将讨论如何滚动更新每一个副本。 滚动更新降低了应用更新的风险,如果某个副本更新失败,整个更新将暂停,其他副本则可以继续提供服务。 同时在更新的过程中,总
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/7967419.html 微服务架构的应用由若干 service 构成。比如有运行 httpd 的 web 前端,有提供缓存的 memcached ,有存放数据的 mysql ,每一层都是 swarm 的一个service,
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/7930321.html 上一节我们提到了 swarm 的 routing mesh 。当外部访问任意节点的8080端口时,swarm 内部的 load balance 会将请求转发给web_server 其中的一个副本。大
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/7909136.html 前面已经学习了如何部署Service吗,也验证了swarm的failover特性,下面我们要学习的是如何访问Service。 下面我们删除之前的Service,重新部署一个Service 内部访问S
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/7898245.html 故障是在所难免的,容器可能崩溃,Docker Host 可能宕机,不过幸运的是,Swarm 已经内置了 failover策略。 创建Service 的时候,我们没有告诉 swarm 发生故障时该如何
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/7885667.html 上一节部署了只有一个副本的Service,不过对于web服务,我们通常会运行多个实例,这样可以做负载均衡,同时也能提高可用性。 swarm 要实现这个目标非常简单,增加Service 的副本数就可以
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/7874609.html 上一节我们部署好了 Swarm 集群,下面部署一个运行httpd镜像的service进行演示 root@host03:~# docker service create --name web_serv
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/7862254.html 本节我们将创建三节点的swarm集群(操作系统Ubuntu 16.04 ,Docker 版本均不低于 v1.12)。 host01 10.12.31.211 swarm-worker1 host02
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/7845365.html 从主机层面来看,Docker Swarm 管理的是 Docker Host 集群。所以先来讨论一个重要的概念 - 集群化(Clustring) 服务器集群有一组网络上互相连接的服务器组成,他们一起协
阅读全文