= =,據上篇博客已經過了一年多啦。由於機器不多,部署的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