docker 1.12 體驗

Docker 1.12 是docker 最近發佈的版本,當前這個版本還沒法自己用包管理工具直接下載安裝,得下載源代碼編譯安裝。

因爲需要proxy,注意得在源碼的Dockerfile 文件上設置http_proxy 等環境變量。

如果不是git下載而是zip下載還得在Makefile文件設置DOCKER_GITCOMMIT。

編譯後生成的二進制文件替換原系統的docker 文件。啓動docker 服務即可以使用。

Docker 1.12 相對於之前的版本最大的特色就是集成了swarm (這是要和k8s死磕的節奏啊)。

 

root@cloud-server-2:/usr/bin# docker swarm init

root@cloud-server-1:~#docker swarm join cloud-server-2:2377

root@cloud-server-2:/usr/bin# docker service create --nameng nginx

7wlte0hh3x0x9ckyyis3y7ql1

root@cloud-server-2:/usr/bin# docker service ls

ID           NAME  REPLICAS  IMAGE           COMMAND

7wlte0hh3x0x  ng    1/1      nginx 

root@cloud-server-1:/opt/docker# docker ps

CONTAINER ID       IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES

0604e23d8997       nginx:latest        "nginx -g'daemon off"   6 seconds ago       Up 4 seconds        80/tcp, 443/tcp          ng.1.5ayj56otui86p7hr3zlq0kfaw

root@cloud-server-1:/opt/docker# docker rm -f 0604e23d8997

0604e23d8997

root@cloud-server-1:/opt/docker# docker ps

CONTAINER ID       IMAGE               COMMAND                  CREATED              STATUS              PORTS                    NAMES

e8e51af64c4e   

root@cloud-server-2:/usr/bin# docker service scale ng=3
ng scaled to 3

root@cloud-server-2:/usr/bin# docker service list
ID            NAME  REPLICAS  IMAGE           COMMAND
07bdsp3vs8ru  vote  1/1       instavote/vote  
7wlte0hh3x0x  ng    2/3       nginx

 可以看到swarm 的REPLICAS 和k8s的repilcation 一樣可以保持容器的數量,如果節點或者容器意外銷燬,會重啓啓動新的容器,這個功能彌補了swarm早期版本只是簡單API轉發後就不管的功能,大大提高了集羣的穩定性。同時這個版本的docker也提出了service 概念(真的是和k8s死磕)。

總體感受新版的docker 極大地增強了它在容器集羣管理方面的功能,又簡化了之前swarm操作。



發佈了41 篇原創文章 · 獲贊 9 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章