“有物混成,先天地生薪丁,寂兮寥兮遇西,獨(dú)立而不改,周行而不殆严嗜,可以為天地母粱檀。
吾不知其名,字之曰道漫玄,強(qiáng)為之名曰大茄蚯。
大曰逝,逝曰遠(yuǎn)。
遠(yuǎn)曰反第队。
故道大哮塞,天大,地大凳谦,王亦大忆畅。
域中有四大,而王居其一焉尸执。
人法地家凯,地法天,天法道如失,道法自然绊诲。”[1]
Docker
Mac下安裝Docker很方便褪贵,直接下載docker for mac掂之。安裝之后在桌面的頂部有docker的菜單:
安裝完之后,打開終端脆丁,即可運(yùn)行各種docker指令世舰。
核心概念
-
Docker Daemon
Docker引擎,就是運(yùn)行在后臺(tái)的一個(gè)守護(hù)進(jìn)程槽卫,在我們啟動(dòng)它之后跟压,我們就可以通過(guò)Docker客戶端發(fā)送相關(guān)Docker的命令。 -
Docker Images
Docker鏡像歼培,我們通常會(huì)發(fā)布鏡像到Docker Registry -
Docker Containers
Docker容器震蒋,在獲取到Docker鏡像之后,我們可以運(yùn)行該鏡像躲庄,此時(shí)便會(huì)啟動(dòng)一個(gè)Docker容器查剖,該容器中運(yùn)行鏡像中的程序。如果把Docker鏡像理解為一個(gè)類的話读跷,那么Docker容器就是一個(gè)實(shí)例 -
Docker Client
Docker客戶端梗搅,我們安裝完Docker之后禾唁,我們打開終端使用docker 相關(guān)命令進(jìn)行操作效览,這些命令便是Docker客戶端的命令,另外還有一個(gè)基于REST API的Docker客戶端荡短,REST API一般用于在開發(fā)一些基于Docker運(yùn)維的系統(tǒng)中使用丐枉。 -
Docker Registry
Docker鏡像注冊(cè)中心,Docker的官網(wǎng)的注冊(cè)中心為http://hub.docker.com掘托。我們也可以自己搭建自己的注冊(cè)中心瘦锹。
docker下安裝redis
查找redis鏡像
docker search redis
基本上排在第一位的就是官方的鏡像。
拉取redis鏡像
docker pull redis:latest
其中redis:latest表示我們下載NAME為redis的鏡像,latest表示TAG弯院。
在執(zhí)行完以上命令之后辱士,Docker Client會(huì)從Docker鏡像注冊(cè)中心下載Redis的鏡像,待下載之后听绳,我們查看本地的鏡像颂碘。
查看本地鏡像
docker images
其中IMAGE ID表示鏡像ID,具有唯一性
創(chuàng)建并啟動(dòng)容器
使用以下命令,使用Reids鏡像椅挣,創(chuàng)建并啟動(dòng)Redis容器
docker run -p 6379:6379 -v $PWD/data:/data -d redis:latest redis-server --appendonly yes
執(zhí)行以上命令头岔,我們就使用redis:latest鏡像創(chuàng)建并啟動(dòng)了一個(gè)Redis容器
-p 6379:6379:將容器的6379端口映射成主機(jī)的6379端口
-v $PWD/data:/data :將主機(jī)中當(dāng)前目錄下的data掛載到容器的/data
redis-server --appendonly yes : 在容器執(zhí)行redis-server啟動(dòng)命令,并打開redis持久化配置
查看容器啟動(dòng)情況
docker ps
其中Status表示運(yùn)行狀態(tài)鼠证,Up表示運(yùn)行中峡竣,PORTS表示容器需要對(duì)外暴露的端口號(hào)
** 連接、查看容器**
我們使用Redis鏡像使用redis-cli客戶端量九,連接到redis容器
docker run -it redis:latest redis-cli -h 192.168.1.103
執(zhí)行以上命令适掰,我們就連接到redis容器,接下來(lái)我們就可以使用redis命令進(jìn)行操作:
Docker下安裝zookeeper
單節(jié)點(diǎn)的安裝荠列,跟上述安裝redis步驟相同攻谁,我們回憶一下:
docker search zookeeper
docker pull zookeeper:latest
docker run -p 2181:2181 -v $PWD/data:/data -d zookeeper:latest
進(jìn)入容器
docker exec -it 44b43e486817 /bin/bash
這篇博文講述了 Docker容器進(jìn)入的4種方式,可以移步去看看弯予。
提交鏡像以便重用
我們可以將上述redis戚宦、zookeeper鏡像保存,這樣可以很簡(jiǎn)單的進(jìn)行多節(jié)點(diǎn)部署成集群的方式锈嫩。
docker commit :從容器創(chuàng)建一個(gè)新的鏡像受楼。
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
OPTIONS說(shuō)明:
-a :提交的鏡像作者;
-c :使用Dockerfile指令來(lái)創(chuàng)建鏡像呼寸;
-m :提交時(shí)的說(shuō)明文字艳汽;
-p :在commit時(shí),將容器暫停对雪。
如將上述的redis提交鏡像:
docker commit -a "song" -m "my_redis_base_images" c5355f8853e4 redis:mybase
-
老子《道德經(jīng)》第二十五章河狐,老子故里,中國(guó)鹿邑瑟捣。 ?