= =,据上篇博客已经过了一年多啦。由于机器不多,部署的docker也不多,所以也就不考虑Kubernetes这种比较高大上的东西了,下面这后续估计还会加上服务发现(Consul.io与Consul-Template)与负载均衡(Nginx)相结合,实现灵活的配置和自动化重载,降低运维难度.
架构图:
详解:
1.Builder
本地制作完dockerfile,之后docker build , docker tag 在Push到 私有仓库。相关dockerfile将存放至git
2.Docker registry
docker run -d -p 5000:5000 -v /data/registry:/tmp/registry registry 用registry 在前端加一个 web server,用 web auth 模块专门做账号验证。
3.Dashboard
用途:对私有仓库进行管理
docker run -d -p 内网ip:8001:8080 atcol/docker-registry-ui,并用Nginx 进行代理访问并做相关访问限制
4.Shipyard
用途:可对多主机上的容器进行管理
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock shipyard/deploy start 创建shipyard,默认密码是admin shipyard
docker run --rm -it shipyard/shipyard-cli 进入并修改默认账户密码等信息
5.Flannel 与Etcd
用途:解决跨主机容器直接访问问题。
6.Docker agent
需要开启socket和监听端口,启动参数如下:DOCKER_OPTS="$DOCKER_OPTS --dns 8.8.8.8 --dns 8.8.4.4 -H tcp://内网ip:4243 -H unix:///var/run/docker.sock"
7.Compose
compose是一个基于Docker的用于快速搭建开发环境的工具。compose通过一个配置文件来管理多个Docker容器,非常适合组合使用多个容器进行开发的场景。相关配置文件 将放到git
自动化部署:
1.jenkins
2.compose
后期规划:
1.mesos
2.swarm
3.consul
转载于:https://blog.51cto.com/tntdba/1634700