1.Ubuntu 系統 Docker 安裝
1.1前提準備
Docker 要求 Ubuntu 系統的內核版本高于3.10,可用 uname -r
命令查看當前內核版本。
Ubuntu 系統內核版本 4.10.0 支持 Docker,可以進行 Docker 的安裝操作,如下圖:
1.2下載并安裝 Docker
執行 wget -qO- https://get.docker.com/ | sh
命令,輸入主機密碼后,就會下載腳本并安裝 Docker 及其依賴包,如下圖:
等待幾分鐘,出現下圖所示的提示信息,說明安裝成功。
(提示信息表明,root
用戶可以使用 Docker,當前用戶 liyunfei
還不可使用 Docker。必須先執行 sudo usermod -aG docker liyunfei
授權命令,將 liyunfei
用戶添加到 docker
組中,并 退出系統重新登錄
,方可生效。)
執行 sudo su -
命令切換到 root
用戶下,執行 docker ps
命令成功。
然后我們執行 sudo usermod -aG docker liyunfei
命令,并退出系統。
(如果 Docker 服務沒有起來,可執行 sudo service docker start
啟動Docker服務。)
重新登錄系統,在 liyunfei
用戶下執行 docker ps
命令成功,如下圖:
1.3測試運行 hello world
使用 docker run hello-world
命令,下載 hello-world:latest
鏡像包并啟動容器,測試成功如圖:
2.鏡像加速器配置
國內從 Docker Hub 拉取鏡像有時會遇到困難,此時可以配置國內鏡像加速器。
Docker 官方和國內很多云服務商都提供了國內加速器服務,例如:
- Docker 官方提供的中國 registry mirror
https://registry.docker-cn.com
- 阿里云加速器(需登錄賬號獲取)
- 七牛云加速器
https://reg-mirror.qiniu.com/
我們以 https://reg-mirror.qiniu.com/ 為例,介紹如何配置鏡像加速器。
首先,在 /etc/docker/daemon.json
中寫入如下內容,指定鏡像加速器的服務地址:
{
"registry-mirrors": [
"https://reg-mirror.qiniu.com/"
]
}
注意:一定要保證該文件符合 json 規范,否則 Docker 將不能啟動。
其次,添加 daemon.json
后,重新啟動 Docker 服務。
sudo systemctl daemon-reload
sudo systemctl restart docker
演示案例如下圖所示:
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://reg-mirror.qiniu.com/"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
3. Docker
常用命令
3.1常用命令列表1
docker ps -a #列出所有的容器
docker ps #列出所有活躍的容器
docker ps -l #列出最近創建的容器
docker info #查看 Docker 的系統信息
docker search ubuntu #通過 search 子命令搜索 Docker Hub 上的鏡像
docker run -it ubuntu #啟動容器,并進入交互模式
docker rm 容器ID #刪除容器
exit #退出容器
示例如下圖:
docker ps -a
、docker ps
、docker ps -la
命令:
docker run -it ubuntu
、exit
命令:
3.2常用命令列表2
docker pull tomcat:9-jre8-slim #用pull命令將鏡像下載下來
docker push 172.18.232.50/si-tech/tomcat:9-jre8-slim #用push命令將本地鏡像上傳到鏡像倉庫
docker images #列出本地鏡像
docker image ls #只顯示頂層鏡像
docker image ls -a #顯示包括中間層鏡像在內的所有鏡像,需要加-a參數
docker image ls tomcat #根據條件列出部分鏡像
docker rmi 鏡像ID #根據鏡像ID刪除鏡像
docker rmi <倉庫名>:<標簽> #根據鏡像名稱刪除鏡像
docker export <CONTAINER ID> > /home/export.tar #Export命令用于持久化容器(不是鏡像)
docker save busybox-1 > /home/save.tar #Save命令用于持久化鏡像(不是容器)
docker import - busybox-1-export:latest #與docker export對應,導入壓縮包生成鏡像(可重新指定鏡像名字)
docker load < /home/save.tar #與docker save對應,導入壓縮包生成鏡像
示例如下圖:
docker pull tomcat:9-jre8-slim
命令:
docker images
命令:
docker save tomcat:9-jre8-slim > ./tomcat-9.tar
命令: