搭建深度學習環(huán)境之一:安裝Docker
點擊關注,與你共同成長!

www.jianshu.com/p/38234b2b4f43
搭建深度學習環(huán)境之一:安裝Docker
Docker并非是一個通用的容器工具,它依賴于已存在并運行的Linux內(nèi)核環(huán)境。如果想在其他系統(tǒng)上部署Docker,就必須先安裝一個Linux環(huán)境(可使用VMware Workstation或Oracle VM Virtualbox虛擬機軟件),然后再安裝Docker。
其實,為了其他系統(tǒng)更方便安裝和使用Docker,Docker也推出了針對Windows 10和MaxOS系統(tǒng)的Docker Desktop,針對Win7、Win8系統(tǒng)的Docker Toolbox。它們本質(zhì)上也是先在虛擬機中安裝Linux然后再安裝Docker的方法,Docker Desktop需要開啟Hyper-V(微軟開發(fā)的虛擬機),Docker Toolbox工具集包含了Oracle VM Virtualbox虛擬機。啟動Docker Desktop或Docker Toolbox,相當于啟動裝有Docker的Linux系統(tǒng)。
本文講解在Ubuntu系統(tǒng)上安裝Docker的方法。其他系統(tǒng)可參考「Docker 教程」
一、Ubuntu 系統(tǒng) Docker 安裝
1.1前提準備
Docker 要求 Ubuntu 系統(tǒng)的內(nèi)核版本高于3.10,可用 uname -r 命令查看當前內(nèi)核版本。Ubuntu 系統(tǒng)內(nèi)核版本 4.10.0 支持 Docker,可以進行 Docker 的安裝操作,如下圖:

1.2下載并安裝 Docker
執(zhí)行 wget -qO- https://get.docker.com/ | sh 命令,輸入主機密碼后,就會下載腳本并安裝 Docker 及其依賴包,如下圖:

等待幾分鐘,出現(xiàn)下圖所示的提示信息,說明安裝成功。(提示信息表明,root 用戶可以使用 Docker,當前用戶 liyunfei 還不可使用 Docker。必須先執(zhí)行 sudo usermod -aG docker liyunfei 授權(quán)命令,將 liyunfei 用戶添加到 docker 組中,并 退出系統(tǒng)重新登錄,方可生效。)

執(zhí)行 sudo su - 命令切換到 root 用戶下,執(zhí)行 docker ps 命令成功。然后我們執(zhí)行 sudo usermod -aG docker liyunfei 命令,并退出系統(tǒng)。(如果 Docker 服務沒有起來,可執(zhí)行 sudo service docker start 啟動Docker服務。)


重新登錄系統(tǒng),在 liyunfei 用戶下執(zhí)行 docker ps 命令成功,如下圖:

1.3測試運行 hello world
使用 docker run hello-world 命令,下載 hello-world:latest 鏡像包并啟動容器,測試成功如圖:

二、鏡像加速器配置 國內(nèi)從 Docker Hub 拉取鏡像有時會遇到困難,此時可以配置國內(nèi)鏡像加速器。Docker 官方和國內(nèi)很多云服務商都提供了國內(nèi)加速器服務,例如:
Docker 官方提供的中國 registry mirror https://registry.docker-cn.com
阿里云加速器(需登錄賬號獲取)
七牛云加速器 https://reg-mirror.qiniu.com/
我們以 https://reg-mirror.qiniu.com/ 為例,介紹如何配置鏡像加速器。
首先,在 /etc/docker/daemon.json中寫入如下內(nèi)容,指定鏡像加速器的服務地址:
{
"registry-mirrors": [
"https://reg-mirror.qiniu.com/"
]
}
注意:一定要保證該文件符合 json 規(guī)范,否則 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

三、Docker 常用命令
3.1常用命令列表1
docker ps -a #列出所有的容器
docker ps #列出所有活躍的容器
docker ps -l #列出最近創(chuàng)建的容器
docker info #查看 Docker 的系統(tǒng)信息
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 #顯示包括中間層鏡像在內(nèi)的所有鏡像,需要加-a參數(shù)
docker image ls tomcat #根據(jù)條件列出部分鏡像
docker rmi 鏡像ID #根據(jù)鏡像ID刪除鏡像
docker rmi <倉庫名>:<標簽> #根據(jù)鏡像名稱刪除鏡像
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 命令:

以上,便是今天的分享,希望大家喜歡,覺得內(nèi)容不錯的,歡迎「分享」「贊」或者點擊「在看」支持,謝謝各位。

