什么是 Docker
Docker 是一個虛擬化容器引擎,完全使用沙箱隔離機制,較傳統的 VM 虛擬機有很大優勢,


傳統虛擬機(VM)和虛擬化容器(Docker)的區別:
- 傳統的 VM 虛擬機不能共享資源 , 比如在 VMWare 中安裝了一個記憶體為 4GB 的 Linux 作業系統 , 意味著該Linux系統使用了宿主機中固定的 4GB 記憶體且不能與宿主機或其它虛擬系統共享該資源 , 可能會造成資源浪費或資源溢位
- Docker 彌補了傳統 VM 虛擬機的缺點 , 每個虛擬化作業系統可以互相共享資源 , 解決了資源溢位或者資源浪費等一系列問題
Docker 主要概念
Docker 鏡像(Image)
- 作業系統分為內核和用戶空間,對于 Linux 而言,內核啟動后,會掛載 root 檔案系統為其提供用戶空間支持,而 Docker 鏡像(Image)就相當于是一個 root 檔案系統
- Docker 鏡像是一個特殊的檔案系統,除了提供容器運行時所需的程式、庫、資源、配置等檔案外,還包含了一些為運行時準備的一些配置引數(如環境變數、用戶等)
Docker 容器(Container)
- Docker 鏡像和 Docker 容器的關系,就像是面向物件程式設計中的類與物件,鏡像是靜態的定義
- 容器是鏡像運行時的物體,可以被創建、啟動、停止、洗掉、暫停等
- 容器內的行程是運行在一個隔離的環境里,使用起來就好像是在一個獨立于宿主的系統下操作一樣,這種特性使得容器封裝的應用比直接在宿主運行更加安全
Docker 倉庫(Registry)
- 鏡像構建完成之后,一行命令就可以在當前的宿主機上運行起來,但是如果要在其它服務器上使用這個鏡像,就需要一個集中存盤鏡像的倉庫 — 即 Docker 倉庫
- 公有 Docker Registry:最常使用的 Registry 公開服務是官方的 Docker Hub,但在國內訪問會比較慢,而國內的一些云服務商提供了針對 Docker Hub 的鏡像服務,常見的有 阿里云、DaoCloud 加速器,比直接從 Docker Hub 下載速度會提高很多
- 私有 Docker Registry:可以在本地搭建私有 Docker Registry,Docker 官方提供了 Docker Registry 鏡像,可以直接使用做為私有 Registry 服務
安裝 Docker
方法一:使用腳本自動安裝
$ curl -fsSL get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh --mirror Aliyun
執行這兩行命令后,腳本就會自動的將一切準備作業做好,并且把 Docker CE Edge 安裝在系統中,
方法二:使用 APT 安裝
安裝一些必要的系統工具
$ sudo apt-get update
$ sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
安裝 GPG 證書
$ curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
寫入軟體源資訊
$ sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
更新軟體源
$ sudo apt-get -y update
安裝 Docker CE
$ sudo apt-get -y install docker-ce
加入 Docker 用戶組
安裝之后,默認情況下,Docker 命令會使用 Unix socket 與 Docker 引擎通訊,而只有 Root 用戶和 Docker 組的用戶才可以訪問 Docker 引擎的 Unix socket,一般 Linux 系統上不會直接使用 Root 用戶,因此,更好地做法是將需要使用 Docker 的用戶加入 Docker 用戶組,
- 建立 Docker 用戶組
$ sudo groupadd docker
- 將用戶加入 Docker 用戶組
$ sudo usermod -aG docker $USER
本文首發于:https://antoniopeng.com
配置鏡像加速器
由于國內從 Docker Hub 下載鏡像有時會非常緩慢,因此可以配置國內云服務商提供的鏡像加速器:
- Docker 官方提供的中國 registry mirror
- 阿里云加速器
- DaoCloud 加速器
阿里云鏡像加速器
添加鏡像加速器
- 登錄阿里云
- 進入 容器鏡像服務控制臺 > 鏡像加速器
- 添加鏡像加速器
- 復制加速器地址,如下圖

Ubuntu 14.04、Debian 7 Wheezy 系統配置
-
編輯 docker 組態檔
$ sudo nano /etc/default/docker -
添加以下代碼
DOCKER_OPTS="--registry-mirror=<鏡像加速器地址>" -
重啟 Docker 服務
$ sudo service docker restart
Ubuntu 16.04+、Debian 8+、CentOS 7 系統配置
-
編輯 daemon.json 組態檔
$ sudo nano /etc/docker/daemon.json -
添加以下代碼
{ "registry-mirrors": [ "<鏡像加速器地址>" ] } -
重啟 Docker 服務
$ sudo systemctl daemon-reload $ sudo systemctl restart docker -
檢查加速器是否生效
$ docker info看到輸出以下內容,說明鏡像加速器配置成功
Registry Mirrors: <鏡像加速器地址> -
文章作者:彭超
-
本文首發于個人博客:https://antoniopeng.com/2019/07/06/docker/%E5%9F%BA%E4%BA%8EUbuntu%E5%AE%89%E8%A3%85Docker/
-
著作權宣告:本博客所有文章除特別宣告外,均采用 CC BY-NC-SA 4.0 許可協議,轉載請注明來自 彭超 | Blog!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/77787.html
標籤:其他
上一篇:Ubuntu18.04 安裝TensorFlow 和 Keras
下一篇:Docker 常用命令匯總
