CentOS7安裝最新版Docker、compose棺克、swarm悠垛、machine

最新版 Docker 安裝

1.卸載 Docker
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest  docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine
 
2.安裝所需的包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
 
3.設(shè)置穩(wěn)定的存儲庫
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
 
4.可選:啟用邊緣和測試存儲庫
sudo yum-config-manager --enable docker-ce-edge
sudo yum-config-manager --enable docker-ce-test
禁用邊緣存儲庫
sudo yum-config-manager --disable docker-ce-edge
 
5.安裝最新版本的 Docker CE
sudo yum install docker-ce
 
6.啟動 Docker
sudo systemctl start docker
 
7.通過運(yùn)行 hello-world 映像驗(yàn)證是否已正確安裝
sudo docker run hello-world

docker-compose 安裝

1.下載最新版本的 Docker Compose (第一次執(zhí)行提示失敗,就多執(zhí)行幾次這個命令試試)
sudo curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
 
2.對二進(jìn)制文件應(yīng)用可執(zhí)行權(quán)限
sudo chmod +x /usr/local/bin/docker-compose
 
3.測試安裝
docker-compose --version

docker-machine 安裝

1.下載 Docker Machine 二進(jìn)制文件并將其解壓縮到 PATH (第一次執(zhí)行提示失敗娜谊,就多執(zhí)行幾次這個命令試試)
base=https://github.com/docker/machine/releases/download/v0.14.0 && curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/tmp/docker-machine && sudo install /tmp/docker-machine /usr/local/bin/docker-machine
 
2.通過顯示機(jī)器版本來檢查安裝
docker-machine version

搭建 swarm 集群

1.新版 docker 已集成 swarm确买,無需單獨(dú)安裝
 
2.使用 docker swarm init 在管理節(jié)點(diǎn)初始化一個 Swarm 集群
docker swarm init --advertise-addr 192.168.153.150
# 如果你的 Docker 主機(jī)有多個網(wǎng)卡,擁有多個 IP纱皆,必須使用 --advertise-addr 指定 IP
# 執(zhí)行 docker swarm init 命令的節(jié)點(diǎn)自動成為管理節(jié)點(diǎn)
 
3.將其他主機(jī)作為 管理節(jié)點(diǎn) 或 工作節(jié)點(diǎn) 加入 swarm 集群(以下命令在待加入節(jié)點(diǎn)執(zhí)行)
docker swarm join --token [MANAGER-TOKEN||WORKER-TOKEN] [MANAGER-IP]:2377
# 示例:docker swarm join --token SWMTKN-1-3pu6hszjas19xyp7ghgosyx9k8atbfcr8p2is99znpy26u2lkl-1awxwuwd3z9j1z3puu7rcgdbx 192.168.153.150:2377
--------------
注意:各機(jī)器之間要開啟以下通信端口 或 關(guān)閉防火墻
# TCP端口2377集群管理端口
# TCP與 UDP端口7946節(jié)點(diǎn)之間通訊端口
# TCP與 UDP端口4789 overlay 網(wǎng)絡(luò)通訊端口
firewall-cmd --zone=public --add-port=2377/tcp --permanent
firewall-cmd --zone=public --add-port=7946/tcp --permanent
firewall-cmd --zone=public --add-port=7946/udp --permanent
firewall-cmd --zone=public --add-port=4789/tcp --permanent
firewall-cmd --zone=public --add-port=4789/udp --permanent
firewall-cmd --reload
關(guān)閉防火墻:
sudo systemctl stop firewalld.service
sudo systemctl disable firewalld.service
--------------
 
4.在管理節(jié)點(diǎn)使用 docker node ls 查看集群
docker node ls
 
5.向集群中添加工作節(jié)點(diǎn)拇惋,通過以下命令獲取加入集群的 WORKER-TOKEN
docker swarm join-token worker
向集群中添加管理節(jié)點(diǎn),通過以下命令獲取加入集群的 MANAGER-TOKEN
docker swarm join-token manager
 
6.退出集群
(1)如果是 manager 先降級為 worker 
docker node demote [HOSTNAME || ID] # ID前幾位即可
(2)退出集群
docker swarm leave
(3)移除節(jié)點(diǎn)
docker node rm [HOSTNAME || ID] # ID前幾位即可
# leave后該節(jié)點(diǎn)仍將出現(xiàn)在節(jié)點(diǎn)列表中抹剩,并將 STATUS標(biāo)記為 down,已不影響 swarm操作蓉坎;
# 要從列表中刪除非活動節(jié)點(diǎn)澳眷,使用 node rm 命令即可。

使用 swarm+compose 部署集群服務(wù)

1.使用 swarm+compose 部署服務(wù)
docker stack deploy -c docker-compose.yml [JIQUN-NAME]
 
2.查看服務(wù)
docker stack ls
 
3.移除服務(wù)
docker stack down [JIQUN-NAME]
# 該命令不會移除服務(wù)所使用的 數(shù)據(jù)卷蛉艾,如果你想移除數(shù)據(jù)卷請使用 docker volume rm

其他 Docker 常用命令

查看 swarm 集群中的服務(wù):docker service ls
查看 swarm 集群中某個服務(wù)的運(yùn)行狀態(tài)信息:docker service ps mwp_db
查看 swarm 集群中某個服務(wù)的基礎(chǔ)詳細(xì)信息:docker service inspect mwp_db
查看 swarm 集群中某個服務(wù)的日志:docker service logs mwp_db
從 swarm 集群中移除某個服務(wù):docker service rm mwp_db
 
搜索倉庫鏡像:docker search nginx
查找本地鏡像:docker images nginx
查看本地鏡像列表:docker images 或 docker image ls
刪除本地鏡像:docker rmi [IMAGE ID]
強(qiáng)制刪除本地鏡像:docker rmi -f [IMAGE ID] # 一般先停止相關(guān)容器钳踊,再 docker rmi [IMAGE ID] 正常刪除鏡像
 
列出本機(jī)容器 container:docker ps -a 或 docker container ls
刪除 container:docker rm [CONTAINER ID] 或 docker container rm [CONTAINER ID]
清理所有處于終止?fàn)顟B(tài)的容器:docker container prune
進(jìn)入后臺運(yùn)行的容器 container:docker exec -it [CONTAINER_NAME || CONTAINER_ID] /bin/sh
# docker exec 進(jìn)入容器后 exit 不會導(dǎo)致容器停止
創(chuàng)建一個新的容器并運(yùn)行:docker run --name web2 -d -p 81:80 nginx:v2
停止一個運(yùn)行中的容器:docker stop [CONTAINER ID || NAMES]
 
查看所有數(shù)據(jù)卷:docker volume ls
刪除指定數(shù)據(jù)卷:docker volume rm [VOLUME NAME]
清理所有無主數(shù)據(jù)卷:docker volume prune
 
查看 Image 或 Container 的信息:docker inspect [IMAGE || IMAGE ID || CONTAINER ID]
 
查看 CentOS 系統(tǒng)內(nèi)核版本:uname -r
 
使用 Dockerfile 定制鏡像:docker build -t nginx:v3 [DOCKERFILE PATH || URL]
# 其中 [DOCKERFILE PATH || URL] 為 Dockerfile 文件所在目錄,例:docker build -t nginx:v3 .
 
更多命令可參考:http://www.runoob.com/docker/docker-command-manual.html

配置 Docker 加速器

參考:https://yeasy.gitbooks.io/docker_practice/install/mirror.html
對于使用 systemd 的系統(tǒng)勿侯,在 /etc/docker/daemon.json 中寫入如下內(nèi)容(如果文件不存在則新建該文件)
{
  "registry-mirrors": [
    "https://registry.docker-cn.com"
  ]
}
之后重新啟動服務(wù)拓瞪。
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
檢查加速器是否生效:docker info
Registry Mirrors:
 https://registry.docker-cn.com/

Docker hub 地址:https://hub.docker.com/
Docker 官方文檔地址:https://docs.docker.com/

廣告:沼氣池

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末助琐,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子兵钮,更是在濱河造成了極大的恐慌掘譬,老刑警劉巖葱轩,帶你破解...
    沈念sama閱讀 211,948評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異猾普,居然都是意外死亡抬闷,警方通過查閱死者的電腦和手機(jī)耕突,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評論 3 385
  • 文/潘曉璐 我一進(jìn)店門炕泳,熙熙樓的掌柜王于貴愁眉苦臉地迎上來上祈,“玉大人登刺,你說我怎么就攤上這事』屎模” “怎么了郎楼?”我有些...
    開封第一講書人閱讀 157,490評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長简珠。 經(jīng)常有香客問我聋庵,道長珍策,這世上最難降的妖魔是什么攘宙? 我笑而不...
    開封第一講書人閱讀 56,521評論 1 284
  • 正文 為了忘掉前任疗绣,我火速辦了婚禮多矮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘讯壶。我一直安慰自己,他們只是感情好格粪,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,627評論 6 386
  • 文/花漫 我一把揭開白布比伏。 她就那樣靜靜地躺著,像睡著了一般疆导。 火紅的嫁衣襯著肌膚如雪凳怨。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,842評論 1 290
  • 那天是鬼,我揣著相機(jī)與錄音,去河邊找鬼紫新。 笑死均蜜,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的芒率。 我是一名探鬼主播囤耳,決...
    沈念sama閱讀 38,997評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼偶芍!你這毒婦竟也來了充择?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,741評論 0 268
  • 序言:老撾萬榮一對情侶失蹤匪蟀,失蹤者是張志新(化名)和其女友劉穎椎麦,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體材彪,經(jīng)...
    沈念sama閱讀 44,203評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡观挎,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,534評論 2 327
  • 正文 我和宋清朗相戀三年琴儿,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片嘁捷。...
    茶點(diǎn)故事閱讀 38,673評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡造成,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出雄嚣,到底是詐尸還是另有隱情晒屎,我是刑警寧澤,帶...
    沈念sama閱讀 34,339評論 4 330
  • 正文 年R本政府宣布缓升,位于F島的核電站鼓鲁,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏仔沿。R本人自食惡果不足惜坐桩,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,955評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望封锉。 院中可真熱鬧绵跷,春花似錦、人聲如沸成福。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,770評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽奴艾。三九已至净当,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蕴潦,已是汗流浹背像啼。 一陣腳步聲響...
    開封第一講書人閱讀 32,000評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留潭苞,地道東北人忽冻。 一個月前我還...
    沈念sama閱讀 46,394評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像此疹,于是被迫代替她去往敵國和親僧诚。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,562評論 2 349

推薦閱讀更多精彩內(nèi)容