= =,据上篇博客已经过了一年多啦。由于机器不多,部署的docker也不多,所以也就不考虑Kubernetes这种比较高大上的东西了,下面这后续估计还会加上服务发现(Consul.io与Consul-Template)与负载均衡(Nginx)相结合,实现灵活的配置和自动化重载,降低运维难度.

架构图:

wKioL1UxEHWDt1S3AAGSV9NZ3Ro288.jpg

详解:

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