【雲端計算學習筆記(四)】之 安裝Docker,Docker命令介紹,Docker-Compose
技術標籤:雲端計算學習筆記dockerlinuxcentos
本文章由公號【開發小鴿】釋出!歡迎關注!!!
老規矩–妹妹鎮樓:
一. 安裝Docker
(一) 安裝CentOS7
1. 安裝系統
從網上下載CentOS7的映象,建立虛擬機器,安裝CentOS7系統。檢查系統的網絡卡開啟情況,使用ip addr命令,也可以安裝net-tools來使用ifconfig命令。
2. 配置yum的源
之後,配置yum的配置檔案,將阿里雲的配置檔案整個替換掉/etc/yum.repos.d目錄中的CentOS-Base.repo配置檔案,再通過以下命令新增阿里雲的Docker yum源:
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
(二) 安裝指定版本的Docker
1. 檢視伺服器上的Docker
首先檢視阿里雲伺服器上的Docker版本:
yum list docker-ce –showduplicates
2. 安裝指定Docker
然後安裝指定的docker版本和docker-selinux版本,如17.03.0:
# Install docker
# on a new system with yum repo defined, forcing older version and ignoring obsoletes introduced by 17.06.0
yum install -y --setopt=obsoletes=0 \
docker-ce-17.03.2.ce-1.el7.centos.x86_64 \
docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch
(三) 啟動Docker服務
systemctl enable docker systemctl start docker
通過hello-world驗證Docker的執行情況:
docker run hello-world
(四) 設定Docker國內加速地址
申請阿里雲的私人Docker映象倉庫地址,然後在/etc/docker目錄下建立daemon.json檔案,輸入以下字元,包括你的Docker 倉庫地址:
{
"registry-mirrors": ["<your accelerate address>"]
}
然後重啟deamon服務:
systemctl daemon-reload
systemctl restart dockerr
通過檢視docker資訊,就可以看到docker的映象倉庫地址的變化:
docker info
二. Docker命令
(一) Docker指令的格式
docker 命令關鍵字 一系列引數
如:
docker run --name xx –link db:mysql -p 8080:80 -d xxx
(二) 命令關鍵字
1. docker info :
作為守護程序的系統資源設定
2. docker search
查詢Docker倉庫中的映象
3. docker pull
從Docker倉庫中拉取映象
4. docker images
查詢當前本地的映象
5. docker rmi
刪除Docker映象,可以通過映象的名稱刪除,也可以通過映象的ID號前四位來簡便地刪除,要注意,映象只有在沒有容器使用該映象時可以刪除
6. docker ps
查詢當前的執行著的容器
(1)加上-a引數,能夠查詢出關閉的容器
(2)加上–no-trunc引數,可以檢視完整的128位容器ID
7. docker run
容器的建立啟動。
(1)可通過新增–restart=always設定為與docker同時啟動,不會因為docker重啟而停止;
(2)新增 -h x.xx.xxx 引數,設定容器的主機名稱
(3)新增 --dns xx.xx.xx.xx 設定容器使用的DNS伺服器
(4)新增 --dns-search 設定DNS搜素
(5)新增 --add-host hostname:IP 注入主機名與IP的解析關係
(6)新增 --rm 設定在容器停止時自動刪除容器
8. docker start/stop
容器啟動停止,可通過容器ID或容器別名操作
9. docker rm
刪除容器,注意只有在容器停止時可以刪除
10. docker inspect
檢視詳細的容器基本資訊
11. docker logs
檢視容器的日誌
12. docker stats
檢視容器所佔用的系統資源,如CPU,硬碟,IO等
13. docker exec 容器名 容器內執行的命令
可以向容器中傳送命令並執行
14. docker exec -it 容器名 /bin/bash
進入容器內部的bash中,執行命令
docker命令除了可以單條地使用外,還可以賦值,解析變數,巢狀使用,如將一條命令的結果傳遞給另一條命令:
docker rm -f $(docker ps -a -q)
三. Docker-Compose
(一) 單一容器的管理
每個容器建立後,都會分配一個CONTAINER ID作為容器的唯一表示,後續對容器的啟動,停止,修改,刪除等操作,都會通過CONTAINER ID來完成。
(二) 多容器管理
Docker提倡一個容器一個程序,假設一個服務需要多個程序所組成,就需要多個容器組成一個系統,相互分工和配合對外提供完整服務。Docker-Compose就是這樣一個容器編排工具,能夠讓使用者通過在一個模板檔案(YAML格式)中定義一組相關聯的容器,編排不同容器之間的啟動優先順序等等。
(三) Docker-Compose的安裝
通過以下命令,高速安裝Docker-Compose:
curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.5/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
通過docker-compose --version 檢視安裝是否成功。
(四) Docker-Compose的用法
通過在 docker-compose 命令後新增以下的引數來使用:
1. -f
指定使用的yaml檔案的位置
2. ps
顯示Docker-Compose編排的所有容器資訊 。
3. restart
重新啟動容器。
4. logs
檢視日誌資訊。
5. config -q
驗證yaml配置檔案是否正確。
6. stop/start
停止,啟動容器。
7. up -d
啟動容器專案
8. pause/unpause
暫停容器,恢復容器。
9. rm
刪除容器