搭建深度學習環境之一:安裝Docker

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 官方和國內很多云服務商都提供了國內加速器服務,例如:

我們以 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 -adocker psdocker ps -la 命令:

docker run -it ubuntuexit 命令:

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 命令:

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容