分类
dev

Docker in Production 笔记

In production

docker-workshop-thought-works

上周六参加了thoughtworks的docker workshop活动, 主要探讨了docker技术在生产环境应用的问题.

前面介绍了一下容器相关技术, 如Linux Container(lxc), 也介绍了namespace隔离等等.

还有docker的架构:

docker-architecture

然后又有部分常见的docker使用技术, 如docker compose, 使用compose.yml文件指定容器的创建, 以及整体管理等.

进阶

文件系统的挂载, 包括数据卷挂载(-v), 以及制作+使用数据容器的思路方向.

容器网络模型, host内的bridge, 跨host的overlay, 以及sandbox/endpoint定义.

docker-network

也扩展了一下安全性问题. (docker真的权限...太高了)

多主机部署于服务发现

Consul服务发现.

Registrator服务注册.

Docker Swarm集群.

日志/监控

docker logs的使用局限.

一点关于实际应用的思考

在docker的助力下,将每个服务,做成一个容器,然后跑在公司所有的主机上,这样的微服务架构想想就知道才是当下最合理的方式。

借助cluster解决方案,可以将公司的多服务器主机的资源合起来利用,并能更好的应对服务故障。

而容器微服务,在开发本地调试,一旦通过测试可以发布,发布的过程也是简单而不会出错。

构建好如上讲述的服务注册+发现,更能动态获取服务地址,自动完成服务之间的连接,才称得上是科学做法。

而服务状态监控,健康检查,日志收集处理,这些服务构建好,才能真的在出错时及时追溯问题,更能通过预警邮件及时知道问题。

一个产品环境,必须是科学专业的环境,而不是单单能运行就行。