1. 程式人生 > >輕鬆玩轉docker

輕鬆玩轉docker

第一章:Docker簡介

第一節.概述

Docker是唯一一能夠應對整個混合雲中的每個應用的提供集裝箱服務的平臺。 現在很多企業面臨著數字化轉型的壓力,受到現有應用程式和基礎架構的制約,很難有很好的發展。而Docker合理利用日益多樣化的雲,資料中心和應用程式架構產品組合。 真正實現了應用程式和基礎架構與開發人員和IT操作員之間的真正獨立性,以釋放他們的潛力並建立更好的協作和創新模式。

Docker是開發,運維和執行應用程式的開放平臺。 Docker使您能夠將應用程式與基礎架構分開,以便您可以快速交付軟體。 使用Docker,您可以像管理應用程式一樣管理基礎架構。 通過利用Docker的優點,快速進行運維,測試和部署程式碼,可以明顯地縮短編寫程式碼,以及在生產環境中執行程式碼之間的延遲的時間。真正實現與平臺解耦合。

1.Docker平臺

Docker提供了在稱為容器的鬆散隔離環境中打包和執行應用程式的能力。 隔離和安全性允許您在給定主機上同時執行多個容器。 容器是輕量級的,因為它們不需要管理程式的額外負載,而是直接在主機的核心中執行。 這意味著,與使用虛擬機器相比,您可以在給定的硬體組合上執行更多的容器。 你甚至可以在實際上是虛擬機器的主機中執行Docker容器!

Docker提供工具和平臺來管理容器的生命週期:

  • 使用容器開發您的應用程式及其支援元件。
  • 容器成為分發和測試你的應用程式的單元。
  • 準備好後,將您的應用程式部署到生產環境中,作為容器或協調服務。 無論您的生產環境是本地資料中心,雲提供商還是兩者的混合,這都是一樣的。

2.我們可以使用Docker來做什麼

1).快速,一致地交付您的應用程式

通過允許開發人員使用提供應用程式和服務的本地容器在標準化環境中工作,Docker簡化了開發生命週期。 容器非常適合持續整合和持續交付(CI/CD)工作流程。

考慮以下示例場景:

  • 開發人員在本地編寫程式碼並使用Docker容器與他們的同事分享他們的工作。
  • 使用Docker將他們的應用程式推入測試環境並執行自動和手動測試。
  • 當開發人員發現錯誤時,他們可以在開發環境中修復它們,並將它們重新部署到測試環境進行測試和驗證。
  • 測試完成後,向客戶提供修補程式與將更新後的影象推送到生產環境一樣簡單。

2).響應式部署和縮放

Docker的基於容器的平臺支援高度可移植的工作負載。 Docker容器可以在開發人員的本地膝上型電腦上,資料中心的物理或虛擬機器上,雲提供程式上或混合環境中執行。

Docker的可移植性和輕量級特性也使得動態管理工作負載變得非常容易,可以近乎實時地按業務需求擴充套件或拆分應用程式和服務。

3).在同一個硬體上執行更多的工作負載

Docker輕量且快速。 它為基於虛擬機器管理程式的虛擬機器提供了一種可行,經濟高效的替代方案,因此您可以使用更多計算容量來實現業務目標。 Docker非常適合高密度環境和中小型部署,您需要以更少的資源實現更多功能。

第二節.docker標準化開發,發行和部署

docker將軟體打包成標準化的單元用於開發,發行和部署,容器映象是輕量級可獨立執行軟體包,包含執行它所需的所有內容:程式碼,runtime,系統工具,系統庫,設定。 不管環境如何,集裝箱化軟體都可以執行相同的Linux和Windows環境上。 容器將軟體與其周圍環境隔離開來,例如開發環境和生產環境之間的差異,並有助於減少在同一基礎架構上執行不同軟體的團隊之間的衝突。下圖是一個簡單的結構圖

圖片0:
圖片0

第二章:不同的平臺上安裝Docker與使用

第一節:Mac平臺上Docker安裝與使用

Docker是一個跨平臺的輕量級虛擬機器,可移植性非常高,一次部署,終生可用。Docker可以在Linux,Windows,MacOS等平臺上安裝使用。我們都知道Linux有很多不同的版本,例如Ubuntu,AIX,CentOS,Debian,Fedora,Oracle Linux,Red Hat Enterprise Linux,openSUSE and SUSE Linux Enterprise等。儘管Linux的版本很多,但是我們的Docker都可以在他們在面執行。你也可以使用Docker雲來自動準備和管理你的雲實例。

1.在Mac系統上安轉Docker

Docker的Mac系統上的安裝包中包含了你在Mac上執行Docker的所有依賴的東西,下面這個主題是描述在Mac系統上預安裝需要考慮的一些問題和怎樣在Mac系統上安裝 Docker。
你的Mac本上是否已經安裝了Docker,如果已經安裝了Docker,你可以直接去啟動Docker,如果你已經掌握了在Mac上使用Docker,那麼你可以直接跳過整個Mac上的Docker的安裝和執行部分。

1.2.在Mac下載Docker

在Mac系統上下載Docker有兩種方式,一種是下載stable Docker,另一種是下載Beta版本的Docker

1.3.stable Docker下載

穩定版的Docker是完全測試過的,並且在Docker引擎中帶有實驗特徵的最新版本的Docker引擎,這種引擎在預設情況下啟用並其在Docker Daemon設定中優先配置為實驗模式。如果你想依賴平臺來工作那麼這種安裝方式是最好的選擇。這些版本遵循比beta版更長的釋出時間版本計劃,與Docker Engine版本和修補程式同步。在穩定通道上,您可以選擇是否傳送使用統計資訊和其他資料。
下載地址:https://download.docker.com/mac/stable/Docker.dmg

Docker實驗的特徵

下面將例舉實驗版的Docker的特徵,實驗特徵不是為了成型的產品準備的,他們是用來測試和評估你的sandbod環境的,下面資訊描述了每一個特徵和在github上拉取下來的與之相關的爭議。如果是必要的爭議資訊會提供爭議相關的文件。如果你是一個社群上的Docker的活躍使用使用者,希望你可以在這些特徵上提供一些你希望的建議。

使用實驗版的Docker

實驗特徵現在包含標準的1.13.0版本的Docker二進位制檔案, 為了使實驗特徵能使用,你需要--experimental來啟動Docker守護程序,你可以通過使用/etc/docker/daemon.json使守護標誌能用。例如:

{
           "experimental": true
}

然後確認實驗標誌是可以使用的

$ docker version -f '{{.Server.Experimental}}'
true
目前的實驗特徵

額外的圖形驅動外掛
Ipvlan網路驅動器
Docker堆疊和分散式應用程式軟體集
檢查點和恢復

怎麼樣評判這些特徵

此處的內容沒什麼用,主要是關於這些特徵的更改建議。

1.4.Beta Docker下載

這個安裝包提供了最新適應Mac系統的Docker的Beta釋出版本,在Docker引擎中提供了帶有實驗特徵的切掉邊緣效應,這種引擎在預設情況下啟用並其在Docker Daemon設定中優先配置為實驗模式。如果你想在開發模式下實驗特徵這是最好的使用通道,並且能經受得住一些非穩定性和bugs。這個通道是Beta程式的延續,為了應用程式的進化你可以提供一些相關的反饋。Beta通道的版本釋出比Stable通道更頻繁,經常一個釋出一次或者多次。我們通過板來收集所有的使用者資料。
下載地址:https://download.docker.com/mac/beta/Docker.dmg

重要提示

Mac需要在執行OS X El Capitan 10.11的2010年或更新的Mac上,或更高版本的macOS版本,英特爾支援MMU虛擬化。該應用程式將在10.10.3 Yosemite上執行,但支援有限。請看安裝前需要知道什麼的完整的預備知識解釋。你可在beta和stable版本之間轉換,但是在同一時刻你必須只能安裝一個應用程式。在安裝另一個之前解除安裝這個只是如果你想儲存以前的那個Docker你需要儲存映象和匯出容器。想要知道更多,請看https://docs.docker.com/docker-for-mac/faqs/#stable-and-beta-channels。

在Mac系統上安裝Docker你需要知道些什麼

首先你需要了解Docker ToolBox和Docker Machine:如果你已經在你的機器上執行Docker,首要條件就是閱讀Docker for Mac和Docker ToolBox來理解已經存在的設定對這個安裝的影響。怎樣在Mac系統下配置你的環境和怎樣使兩個產品能夠共同協作。

Docker機器的相關聯絡:在Mac上安裝Docker不會影響你建立的機器。你可以選擇從本地預設機器獲取選擇複製映象和容器到新的Mac上的Docker HyperKit”虛擬機器。當你在Mac上執行Docker,不用需要Docker虛擬機器執行在本地(它可以執行在任何地方)。Mac系統上的Docker,你有一個新的、本地的虛擬系統來取代虛擬盒子系統執行(這個東西叫做HyperKit)。想要學更多的話,請看下面的Docker for Mac和Docker ToolBox。

系統需求:只有滿足所有這些要求時,Mac版Docker才會啟動

  • Mac必須是因特爾硬體支援記憶體管理單元(MMU)虛擬化的2010版或者更新的版本。例如:擴充套件頁表(EPT)和非限制模式。
  • 支援OS X El Capitan 10.11和更高版本的MacOS。 至少,Docker for Mac需要macOS Yosemite 10.10.3或更新版本,注意使用10.10.x是有一定的風險的。
  • 從Docker for Mac穩定版1.13(即將推出)和併發Beta版本開始,我們將不再解決OS X Yosemite 10.10特有的問題。 在將來的版本中,由於OS X版本的棄用狀態,Docker for Mac可能會停止在OS X Yosemite 10.10上執行。建議升級到最新版本的macOS。
  • 至少4GB的記憶體
  • 不能安裝版本4.3.30之前的VirtualBox(它與Mac的Docker不相容)

注意.如果你的系統是不滿足這些要求的,你能安裝Docker Toolbox,使用甲骨文的虛擬盒子來代替HyperKit
安裝包括:Docker Engin, Docker CLi,Docker Compose和Docker Machine

1.5.Mac上安裝和執行Docker
  • 雙擊Docker.dmg開啟安裝包,然後拖拽Moby藍鯨到應用資料夾。在安裝過程中你將會被Docker.app請求輸入你電腦的系統密碼。給予進入特權的需要安裝網路元件和連結到Docker應用程式。
    圖片1:
    圖片1

  • 雙擊Docker.app啟動Docker
    圖片2:
    圖片2

  • 藍鯨的頭狀態條表Docker正在執行,並且是可以從終端進入的。如果你已經安裝了這個app,你也會獲得暗示下一步成功的訊息和連結到這個文件,點選藍鯨圖示在狀態條上有下圖這樣一個顯示和彈出
    圖片3:
    圖片3

  • 點選鯨獲取引數和其他選項
    圖片14:
    圖片14

  • 選擇關於Docker以驗證您是否具有最新版本

恭喜你,你已經完成Mac下面的Docker安裝。

2.Mac平臺下Docker相關的東西

2.1.開始使用Docker for Mac

Docker是一個建立集裝箱式的全開發平臺應用程式,在Mac平臺上執行Docker最好的方法就是在Mac平臺上啟動Docker

注意:如果你還沒有在Mac平臺上安裝Docker,請你現在Mac平臺上安全穩定版的Docker或者Beta版本的Docker,在安裝之前你必須瞭解Docker
對Mac系統的安裝需求,你可以先看上面提道的安裝前你需要知道的東西。

2.2.檢查Docker Engine,Docker Compose和Docker Machine的版本

如果你的docker,docker-compose和docker-machine是能與Docker.app相容的最新版本,那麼你就可以執行下面這些命令

$ docker --version
Docker version 1.13.0, build 49bf474

$ docker-compose --version
docker-compose version 1.10.0, build 4bd6f1a

$ docker-machine --version
docker-machine version 0.9.0, build 15fd4c7

注意.這上面只是一個例子,你的輸出結果根據你的版本不同而不同

2.2. 瀏覽應用程式和執行一個案列

  • 開啟命令列終端,使用Docker命令檢查Docker是不像所期望的那樣正常工作。可以使用這些命令docker version, docker ps和docker run hello-world來確認Docker是否正常執行,如果這些命令能正常執行,那麼就說Docker在執行著。
  • 使用更刺激的方法,執行一個Docker化的web伺服器,當然這樣做的前提條件是你本地必須有你要執行的映象。

docker run -d -p 80:80 --name webserver nginx
圖片5:
圖片5

如果本地沒有找到這個映象,那麼Docker將會去Docker Hub中拉取映象。
注意:早期的Beta釋出版本使用docker做為主機名來建立URL,現在埠號被暴露在虛擬機器的私有IP地址並且在沒有主機名字設定的情況下傳遞給主機,也可以看Beta9的釋出注意點。

  • 在你的web伺服器正在執行的時候執行docker ps檢視web伺服器容器的詳細資訊。

  • 停止或者移除容器和映象
    nginx web伺服器在你停止或者移除容器之前會持續執行著,如果你想停止web伺服器:docker stop webserver,啟動伺服器用命令docker start webserver。檢視一個容器是否停止了用命令docker ps; docker ps -a檢視終止狀態的容器。使用docker rm -f webserver命令來移除正在執行的容器。這個命令會移除容器,但不能移除nginx映象。你可以使用docker list命令來列出本地映象。你可能會儲存一些映象在本地以致於你不用再次去Docker Hub中拉映象。想要移除一個長期不需要的映象,使用docker rmi後加ID號和映象名字。例如,docker rmi ngix。

  • 命令總結:

docker ps 檢視正在執行的容器

docker stop停止正在執行的容器

docker start啟動容器

docker ps -a檢視終止狀態的容器

docker rm -f webserver命令來移除正在執行的容器

docker list 列出本地映象

docker rmi 刪除的映象

2.3.Preferences

選擇,藍鯨圖示–>選單條中的Preferences。你可以設定下面的執行時間選項

General

圖片6:
圖片6

自動啟動,更新,備份,使用資料
  • Mac平臺下的Docker設定當你登入的自動啟動Docker。如果你想在開啟你的對話時不啟動Docker就不需要檢查這個選項
  • Mac平臺下的Docker在更新可獲得時,設定自動檢查更新和告知使用者,如果發現一個新版本,點選OK接受安裝它(或者取消更新儲存當前版本)。如果你不能夠檢查更新,你仍然可以手動地更新,藍鯨–>Check for Update
  • 選中從Time Machine備份中排除虛擬機器以防止Time Machine備份Mac平臺下的虛擬機器
  • Send usage statistics你可以在Mac平臺下設定Docker自動傳送診斷、宕機報告和使用者資料。這些資訊能幫助Docker提高應用程式和獲取更多關於故障問題排除的內容。不檢查這個opt輸出和防止自動傳送資料。在這些情況下Docker可能提供更多資訊,甚至自動傳送可用。
File sharing

圖片7:
圖片7

你能夠用它來決定在你的Mac平臺上的目錄是否是容器共享

  • Add a Directory-點選+和操縱你想要新增的目錄
  • 點選Apply & Restart使目錄使用Docker的捆綁峰[-v]特徵對當前容器有效。所有這些侷限性在目錄上是能夠共享的它們不能成為已經共享的目錄的子目錄
Advanced
CPUs

預設情況下,Mac平臺上的Docker設定使用2個處理器,你可以通過設定更高的數字來增加處理力度,或者在Mac上降低它以使得使用更少的計算機資源

Memory

預設情況下,在Mac平臺下的Docker使用2GB的執行記憶體,這2GB的記憶體從你的計算機的總可用記憶體中分配。你可以通過設定更高的記憶體來提高應用程式的效能例如設定為3,如果你想要使用更少的記憶體那麼你就把它設定到1。

Storage location

你可設定Linux容量存在位置,例如:容器和映象被儲存在那裡。Disk images localtion(Beta)啟動Beta39,儲存的映象關聯到硬碟映象,並且被應用程式跟蹤。如果你嘗試移動映象到已經存在一個映象的本地,你將獲得一個溫馨提示,你是否想替換已經存在的映象。對於Beta提前釋出的版本,在這個對話中的標誌已經更新如下

  • Storage location被重新命名為Disk image location
  • Change location按鈕被重新命名為move disk image
    圖片8:
    圖片8
HTTP 代理設定

在Mac平臺上的Docker將探測HTTP/HTTPS代理設定和自動地將這些設定傳播到Docker和傳播到你的容器。例如,如果你把的代理設定設定成http://proxy.example.com,當拉容器的時候,Docker將使用這個代理設定。

圖片9:
圖片9

Docker Daemon

你可以通過在Docker守護程序配置項中設定怎麼樣執行容器。你可以在守護程序中配置一些互動式設定或者轉換到Advanced直接編輯JSON。基本對話方塊提供的設定也可以直接在JSON中配置,此版本只是介紹一些常見的設定,使其更容易配置它們。
圖片10:
圖片10

  • 實驗模式
  • 自定義註冊
  • 編輯守護配置檔案

下面將會詳細介紹著三種模式

Experimental mode

在Mac平臺上啟動的Stable1.13.0和Beta31版本的Docker,這兩種釋出版本在Docker引擎上都有各自的實驗特徵。這部分內容在github上的Docker實驗特徵的的ReadMe中有介紹。實驗特徵是不適合於生產環境或者工作負載的。它們意味著對新想法的沙盒實驗,許多實驗特徵可能會合併到即將釋出的stable版本中,但是其他的從隨後的Beta版本中可能的修飾和提高絕不會發布在Stable版本中。在Beta和Stable釋出的版本中,你可開啟或者關閉實驗模式。不管你開啟還是關閉它,Mac平臺上的Docker會使用目前Docker引擎中常用的使用模式。不管你是不是以實驗模式執行,你都可以通過docker version這個命令來檢查Docker的版本。實驗模式的資料將在Server下列出。如果Experimentaltrue,那麼Docker將以實驗模式執行,結果顯示在下面。(如果false,Experiment模式是關閉)。

$ docker version
Client:
 Version:      1.13.0-rc3
 API version:  1.25
 Go version:   go1.7.3
 Git commit:   4d92237
 Built:        Tue Dec  6 01:15:44 2016
 OS/Arch:      darwin/amd64

Server:
 Version:      1.13.0-rc3
 API version:  1.25 (minimum version 1.12)
 Go version:   go1.7.3
 Git commit:   4d92237
 Built:        Tue Dec  6 01:15:44 2016
 OS/Arch:      linux/amd64
 Experimental: true
Custom registries

一種可選的方案使用Docker Hub或Docker Trusted Registry來儲存你的公有或者私有映象,你能使用Docker來設定你的非安全註冊,對你本機上的映象新增URLs來實現非安全註冊或者註冊映象。(也可以看FAQs,我怎麼新增自定義的CA證書[此處本文後面會寫])

編輯daemon配置檔案

在Daemon–>Advanced dialog,你可以通過json檔案直接配置Daemon,完全地決定你的容器怎麼執行。想看Docker Daemon的完整條目,請看Daemon相關的Docker引擎命令列關聯。在編輯完Daemon配置後,點選Apply & Restart來儲存它並且重新啟動Docker。或者,取消改變,點選tab鍵,當彈出對話方塊來詢問時選擇丟棄或者不應用。
圖片11:
圖片11

解除安裝或者重置

選擇 小藍鯨 ->從選單條目上選擇Preferences,然後在相關對話方塊上點選Uninstall / Reset。

Uninstall–選擇解除安裝選項是從你的Mac系統中移出DockerReset to factory defaults–選擇這個選項重置Mac平臺上的Docker使其回到初始狀態,就像剛安裝的時候一樣。你可以通過<DockerforMacPath> --uninstall這個命令列來從Mac平臺上解除安裝你的Docker。如果Docker預設安裝在本地,下面的命令將提供清除解除安裝

$ /Applications/Docker.app/Contents/MacOS/Docker --uninstall
Docker is running, exiting...
Docker uninstalled successfully. You can move the Docker application to the trash.

你可能想通過使用命令列來解除安裝Docker,例如,你發現一個沒有功能的APP,你從選單條目裡面無法刪除它,那麼你就的使用命令列。

安裝bash completion

如果你使用bash completion,例如:自制軟體在Mac上的bash-completion的bash completion指令碼命令能在Docker.app的Contents/Resources/etc/目錄裡面找到

docker
docker-machine
docker-compose

為了啟用bash completion,這些檔案需要複製或者軟連線到你的bash_completion.d/目錄下。例如,如果你使用自制軟體

ln -s /Applications/Docker.app/Contents/Resources/etc/docker.bash-completion /usr/local/etc/bash_completion.d/docker
ln -s /Applications/Docker.app/Contents/Resources/etc/docker-machine.bash-completion /usr/local/etc/bash_completion.d/docker-machine
ln -s /Applications/Docker.app/Contents/Resources/etc/docker-compose.bash-completion /usr/local/etc/bash_completion.d/docker-compos
Docker Store

從Mac平臺下Docker選單中選擇Docker Store,進入Docker應用下載網站。Docker Store是下一代Docker Hub的一個元件,是找到相容,可信的商業和免費軟體和作為Docker映象發的最佳位置,

第二節:Windows平臺上Docker安裝與使用

1.在windows平臺上安裝docker

Windows平臺上的docker的安裝包含docker在Windows平臺上執行的所有的依賴包,這裡最主要介紹安裝前需要考慮的因素和在Windows平臺上怎麼樣下載和安裝docker。如果你已經安裝了docker,並且準備啟動它了。那麼你可以跳過此步去學習怎麼使用命令列操作docker,docker的配置和docker工具的使用。檢視版本釋出的注意事項請看https://docs.docker.com/docker-for-windows/release-notes/

2.下載windows平臺下的docker

如果你已經做了下載了windows版本下的docker,那麼你可以直接安裝。windows平臺的docker的下載和mac平臺下類似,也有兩種下載方式。

2.1.stable通道下載

下載地址為:https://docs.docker.com/docker-for-windows/install/#download-docker-for-windows
圖片15:
圖片15

2.2.edge通道下載

下載地址為:https://docs.docker.com/docker-for-windows/install/#download-docker-for-windows
圖片151:
圖片151

注意:

windows下的docker要求windows的系統是win10的企業版、教育版和微軟虛擬化技術版本的。請您仔細看看你在安裝需要了解的所有先決條件清單。雖然你可以選擇安裝stable通道或者edge通道中的docker,但是在同一個時間段你不能同時安裝兩個通道中的docker,在你安裝另一個版本的docker和解除安裝這個版本的docker前,你需要儲存儲存映象和匯出容器。

3、在windows下安裝docker前你需要知道的前提條件

3.1、在windows下執行docker要求的前提條件是微軟的虛擬化技術,在微軟的虛擬化技術使用的情況下,如果虛擬盒子不能正常工作,但是會有一些虛擬盒子的vm映象會被保留,通過虛擬盒子建立的docker-machine將不再啟動。windows下的docker的這些VMs不能並行。即使這樣,你也可以使用docker-machine來管理這些路由VMs。

3.2、目前,docker只能執行企業版和教育版的win10上面,將來會支援更多版本的win10。

3.3、windows平臺下的docker建立的容器和映象和windows主機之間共享所有使用者賬戶。這是因為windows下的使用者會使用同一個VM來建立和執行容器。未來windows將會支援隔離使用者內容。

3.4、虛擬化得包必須能夠支援docker在windows下執行,在windows下安裝docker能夠使它變得可用,如果你的系統不能夠滿足這些要求,你需要安裝docker box,這樣你就可以使用甲骨文的虛擬盒子來代替微軟的虛擬化技術,也就說,即使你的作業系統的windows其他版本的,你也可通過使用甲骨文的虛擬盒子裝docker,並且使docker變得可用。

3.5、虛擬化技術必須被啟用,一般情況下,虛擬化預設是被啟用的。更詳細的內容請看虛擬化啟用排錯。

3.6、嵌入虛擬指令碼,在VMware中執行一個windows平臺下的docker或者一個平行例項,也許能正常工作,但是沒有保證。

3.7、windows下安裝docker包含哪些東西:安裝提供的docker Engine、docker客戶的、docker compose專案和Docker Machine.

4、在windows下安裝Docker

4.1.雙擊InstallDocker.msi執行安裝

4.2.接下來安裝嚮導程式接受指令,接受安裝、接下來繼續安裝

4.3.設定launch docker然後完成安裝

圖片16:
圖片16

5.在windows下啟動docker

當你安裝完成後,docker會自動啟動,藍鯨狀態條表面docker正在執行,而且你可以經過終端進入docker。如果你已經安裝了運用程式,將會彈出一個成功的進度條然後建議你進行下一步,並且會連線到下面這個文件。當我們初始化完成之後,選擇“about docker”點選進去可以看到docker的版本。到此為止,恭喜您,你已經完成在windows啟動和執行docker。
圖片17:
圖片17

第三節、在Linux平臺安裝docker

1、在Ubuntu下安裝docker

1.1.先決條件

在ubuntu下使用docker,你必須確定你滿足先決條件,然後安裝docker

1.1.1.dockerEE客戶端

為了安裝docker的企業版本(docker EE),你需要知道Docker EE倉庫和你的測試和裝置聯絡。獲取這些資訊的步驟。
1、輸入這個URL地址進入這個網站: https://store.docker.com/?overlay=subscriptions
2、在Docker Enterprise Edition for Ubuntu部分中的裡面選擇 Get Details/Setup Instructions這兩項。
3、從域區域中拷貝,點選這個即可:Copy and paste this URL to download your Edition
要學習更多關於Docker EE的東西,看這個Docker Enterprise Edition部分的內容。

1.1.2.作業系統需求

要想安裝docker,你得擁有下面的Ubuntu版本作業系統中的一個
Yakkety 16.10
Xenial 16.04 (LTS)
Trusty 14.04 (LTS)

1.1.2.解除安裝老版本的docker

比較老一點的版本的docker被叫做docker或者docker-engine,如果你想解除安裝他們使用下面的命令即可

sudo apt-get remove docker docker-engine

如果apt-get報告這些包中沒有一個包被安裝那麼久OK啦。

/var/lib/docker/這裡面的內容,包括映象、容器、資料卷、網路是被保藏起來的,DockerCE的包現在被稱作docker-ce,dockerEE的包現在被稱為docker-ee。

對於Trusty 14.04的作業系統需要安裝額外的包

執行下面的命令安裝額外的包

$ sudo apt-get update

$ sudo apt-get install \
    linux-image-extra-$(uname -r) \
    linux-image-extra-virtual

2.安裝docker

你可以根據你的開發需求以不同的方式安裝docker。
1、大多數使用者通過配置docker容器,並通過docker容器來安裝他們的docker,這樣可以減少安裝和更新的工作量。也就是說自動的,這是這也官方比較推薦的方法。
2、很多使用者通過下載DEB包來手動安裝並且通過手動更新docker,這也是個有效的解決方案,例如在有缺陷的系統上安裝docker是不需要使用網路。

2.1.安裝使用倉庫

在你第一次在一臺新主機上安裝docker時,你需要配置一些docker的倉庫,然後,你能夠從倉庫中安裝個更新docker。

2.1.設定倉庫

設定DockerEE和DockerCE的方式是不同,下面將會介紹這兩種倉庫的設定

DockerCE

1.安裝一些允許apt在HTTPS上使用一個倉庫

 sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common

2.新增一個docker官方的GPG金鑰

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

認證的金鑰指紋是9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
3.執行下面的命令

$ sudo apt-key fingerprint 0EBFCD88

pub   4096R/0EBFCD88 2017-02-22
      Key fingerprint = 9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
uid                  Docker Release (CE deb) <[email protected]>
sub   4096R/F273FCD8 2017-02-22

4.使用下面的命令來配置stable版本的倉庫,你也可以安裝edge版本的倉庫

stable版本的配置命令

$ sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

edge版本的配置命令,在上面命令列stable的後面新增一個edge即可

$ sudo add-apt-repository \
      "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
      $(lsb_release -cs) \
      stable edge" 
DockerEE

1.安裝一些包允許apt通過HTTPS使用倉庫

$ sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common

2.使用dockerEE客戶端的地址新增官方GPG金鑰

$ curl -fsSL <DOCKER-EE-URL>/gpg | sudo apt-key add -

3.認證金鑰指紋是:DD91 1E99 5A64 A202 E859 07D6 BC14 F10B 6D08 5F96

$ apt-key fingerprint 0EBFCD88
     pub   4096R/6D085F96 2017-02-22
         Key fingerprint = DD91 1E99 5A64 A202 E859  07D6 BC14 F10B 6D08 5F96
     uid       [ultimate] Docker Release (EE deb) <[email protected]>
     sub   4096R/91A29FA3 2017-02-22

4.使用下面的地址來設定stable倉庫,使用你在先決條件注意下面的url地址替代你的Docker-EE-URL

注意:這個命令lsb_release -cs返回的是Ubuntu分散式系統的名字,例如:xenial

$ sudo add-apt-repository \
    "deb [arch=amd64] <DOCKER-EE-URL> \
    $(lsb_release -cs) \
    stable-17.03"
正式安裝docker

1、更新apt

sudo apt-get update

2.安裝最新版本的docker或者安裝指定版本的docker。使用下面的命令安裝最新版本的docker

DockerCE的安裝命令:

sudo apt-get install docker-ce

DockerEE的安裝命令:

sudo apt-get install docker-ee

注意:如果有多個倉庫能用,在執行apt-get install和apt-get update命令時沒有指定docker的版本那麼預設安裝的版本是docker的最新版本。

3.在生產環境上,如果你安裝指定版本的docker來代替最新版本的docker,輸出將會被截斷,接而列出所有的可用版本,DockerEE的客戶端上可以看到DockerCE

$ apt-cache madison docker-ce
docker-ce | 17.03.0~ce-0~ubuntu-xenial | https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages

4.通過執行hello world映象來檢視DockerEE或者DockerCE是不是安裝正確

$ sudo docker run hello-world

這個命令會下載一個test映象並且將該映象執行在容器中,當容器執行時,他會列印資訊和退出

Docker的安裝和執行需要使用root使用者的許可權才能操作,這樣安裝後允許非特權的docker使用者能夠執行docker命令並且可以配置其他的配置項。

5、升級Docker
想要升級Docker,首先你需要執行命令sudo apt-get update, 接著安裝裝置,選擇你所需要的版本的Docker來安裝。

6、從包中安裝
如果你不想通過倉庫來安裝Docker,那麼你可以通過在下.deb檔案來手動地安裝Docker,如果你想更新Docker,你每次都需要下載一個新檔案來手動地更新Docker。

1)、這一步對於DockerCE和DockerEE來說是不同的
DockerCE:去這個網站: https://download.docker.com/linux/ubuntu/dists/; 選中你的Ubuntu版本,瀏覽stable/pool/stable/amd64/;選擇與你的Ubuntu版本對應下的.deb版本的檔案。

注意:如果想要安裝edge版本的包,把stable/pool/stable/amd64/改為edge/pool/stable/amd64/

DockerEE:同樣是去相應的網站下載相關的包,x86_64/stable-17.03,

2)、安裝Docker,把下面的path改變為你下載Docker包的地址。

 $ sudo dpkg -i /path/to/package.deb

Docker守護程序就會自動啟動起來。

3)、通過執行hello world映象來檢視DockerEE或者DockerCE是不是安裝正確

 $ sudo docker run hello-world

這個命令會下載一個test映象並且將該映象執行在容器中,當容器執行時,他會列印資訊和退出

Docker的安裝和執行需要使用root使用者的許可權才能操作,這樣安裝後允許非特權的docker使用者能夠執行docker命令並且可以配置其他的配置項。

4)、升級Docker
想要升級Docker,首先你需要執行命令sudo apt-get update, 接著安裝裝置,選擇你所需要的版本的Docker來安裝。

5)、從包中安裝
如果你不想通過倉庫來安裝Docker,那麼你可以通過在下.deb檔案來手動地安裝Docker,如果你想更新Docker,你每次都需要下載一個新檔案來手動地更新Docker。

7、解除安裝Docker

1)、解除安裝Docker包

DockerCE:sudo apt-get purge docker-ce
DockerEE:sudo apt-get purge docker-ee

2)、你主機上的映象、容器、資料卷和自定義配置檔案是不會自動移除的,刪除所有的映象、容器和資料卷,你需要使用下面的命令

 sudo rm -rf /var/lib/docker

2、在Red Hat Enterprise下安裝docker

要想在紅帽子上安裝Docker,確信你滿足前提條件,然後在安裝Docker

2.1、先決條件
2.1.1、DockerEE倉庫的URL

為了安裝企業版本的Docker,你需要明白你DockerEE的URL與你的試驗和簽署聯絡到一起,下面是獲取這些資訊的途徑和方法。
1、輸入這個URL地址進入這個網站: https://store.docker.com/?overlay=subscriptions
2、在Docker Enterprise Edition for Ubuntu部分中的裡面選擇 Get Details/Setup Instructions這兩項。
3、從域區域中拷貝,點選這個即可:Copy and paste this URL to download your Edition
當你看到站位文字為<DOCKER-EE-URL>使用URL地址,要學習更多關於Docker EE的東西,看這個Docker Enterprise Edition部分的內容。
DockerCE不能再Redhat上使用

系統要滿足的條件

為了安裝Docker,你需要是RHEL7版本的64位的Redhat作業系統。

解除安裝老版本的Docker

老版本的Docker也稱為docker或者docker-engine,如果安裝了這些,解除安裝他們和解除安裝他們的依賴項

 $ sudo yum remove docker \
                   docker-common \
                   container-selinux \
                   docker-selinux \
                   docker-engine

如果yum報告這些包沒有一個被安裝那麼就是OK的啦。

/var/lib/docker/的內容,包括映象,容器、資料卷和網路都被保留,DockerEE包現在被稱為docker-ee

安裝DockerEE

你可以根據你的需求按照不同的方式來安裝DockerEE
大多數使用者通過配置Docker倉庫的方式來安裝Docker,這樣可以減少一些安裝和升級的任務,這是官方比較推薦的方法(其實,官方挺喜歡這樣的搞,因為你可以經常用他的軟體了)。

許多使用者下載RPM包手動地安裝Docker和完全手動管理docker的升級,這是一個很好的方案例如一些有缺陷的系統不用連線網路也能安裝Docker。

通過倉庫來安裝

在你首次在一臺新主機上安裝docker之前,你需要配置docker倉庫,接下來你才通過倉庫來安裝和更新docker,
1、配置docker倉庫
/etc/yum.repos.d/移除已經存在的Docker倉庫
2、在/etc/yum/vars/裡面儲存兩個變數
在這裡面/etc/yum/vars/dockerurl儲存EE的地址,把這項<DOCKER-EE-URL>替換成你在先決條件的中的URL地址,

   $ sudo sh -c 'echo "<DOCKER-EE-URL>" > /etc/yum/vars/dockerurl'

3、在這/etc/yum/vars/dockerosversion裡面儲存RHEL版本的字串,從面的表中獲取恰當的值,大多數使用者使用7,

圖片18:
圖片18

     $ sudo sh -c 'echo "<VERSION-STRING>" > /etc/yum/vars/dockerosversion'

4、安裝提供了yum-config-manager這個功能的yum-utils

$ sudo yum install -y yum-utils

5、使用下面的命令來增加stable倉庫

$ sudo yum-config-manager \
   --add-repo \
   <DOCKER-EE-URL>/docker-ee.repo
安裝Docker

1、更新yum

$ sudo yum makecache fast

如果第一時間你重新整理了包的索引,這樣會增加Docker倉庫,也將會促使你接受GPG金鑰,並且金鑰的指紋將會被顯示認證指紋匹配DD91 1E99 5A64 A202 E859 07D6 BC14 F10B 6D08 5F96,如果發生這樣的事,請你接金鑰。

2、安裝最新版本的Docker或者去next step中安裝指定版本的Docker

$ sudo yum -y install docker-ee

3、在生產環境上,你可以安裝指定版本的Docker來替代最新版本的Docker,使用sort -r按版本號從高到底的順序列出所有可以使用的docker版本,並且使截斷輸出的。
注意: yum list這個命令僅僅顯示二進位制包,為了顯示源包,從包名中省略.x86_64

$ yum list docker-ee.x86_64  --showduplicates |sort -r

docker-ee.x86_64  17.03.0.el7                               docker-ee-stable   

列出的內容依賴於能夠使用的的倉庫和指定的RHEL版本,選擇一個指定的版本來安裝,第二列是版本字串,第三列是倉庫的名字,安裝指定的版本,新增版本號到包名並且通過連字元來分離他們

 $ sudo yum -y install docker-ee-<VERSION_STRING>

4、啟動docker

 $ sudo systemctl start docker

5、通過執行hello world映象來檢視檢驗Docker是不是安裝正確

 $ sudo docker run hello-world

這個命令會下載一個test映象並且將該映象執行在容器中,當容器執行時,他會列印資訊和退出
Docker的安裝和執行需要使用root使用者的許可權才能操作,這樣安裝後允許非特權的docker使用者能夠執行docker命令並且可以配置其他的配置項。

升級DockerEE

想要升級DockerEE,首先執行著個命令sudo yum makecache fast,然後接下來安裝裝置,選擇新的你想要安裝的Docker。

安裝包

如果你不使用官方的Docker倉庫來安裝Docker,你可以下載釋出的.rpm檔案來手動地安裝你的Docker,如果你想要升級Docker,每次你都得下載一個新的檔案。

1、去你瀏覽中嘗試和簽署的與DockerEE有聯絡的URL地址下,然後去7/x86_64/stable-17.03/Packages根據你要安裝的Docker的版本下載.rpm檔案。

2、安裝Docker,把下面的path改變為你下載Docker包的地址。

 $ sudo yum install /path/to/package.rpm

3、啟動Docker

$ sudo systemctl start docker

4、通過執行hello world映象來檢視DockerEE或者DockerCE是不是安裝正確

 $ sudo docker run hello-world

這個命令會下載一個test映象並且將該映象執行在容器中,當容器執行時,他會列印資訊和退出
Docker的安裝和執行需要使用root使用者的許可權才能操作,這樣安裝後允許非特權的docker使用者能夠執行docker命令並且可以配置其他的配置項。

升級DockerEE

為了升級Docker,下載新的檔案包並且重新安裝程式,使用這個命令yum -y upgrade來替代這個命令yum -y install,並且指向新的檔案

解除安裝DockerEE

1、解除安裝DockerEE包

$ sudo yum -y remove docker-ee

2、在你主機上的映象、容器、資料卷和自定義的檔案不會自動移除,為了刪除所有的容器、映象和資料卷,使用下面的命令

$ sudo rm -rf /var/lib/docker

你必須手動地刪除一些編輯的配置檔案。

3、在CentOS下安裝docker

如果想要在CentOS上安裝Dockers,確信你已近滿足先決條件,再安裝Dockers

3.1.先決條件
DockerEE客戶端

為了安裝企業版本的Docker,你需要明白你DockerEE的URL與你的試驗和簽署聯絡到一起,下面是獲取這些資訊的途徑和方法。
1、輸入這個URL地址進入這個網站: https://store.docker.com/?overlay=subscriptions
2、在Docker Enterprise Edition for Ubuntu部分中的裡面選擇 Get Details/Setup Instructions這兩項。
3、從域區域中拷貝,點選這個即可:Copy and paste this URL to download your Edition
當你看到站位文字為<DOCKER-EE-URL>使用URL地址,要學習更多關於Docker EE的東西,看這個Docker Enterprise Edition部分的內容。
DockerCE不能再Redhat上使用

系統需求

想要更好地安裝Docker,你需要64位的CentOS 7版本的CentOS系統.

解除安裝老版本的Docker

老版本的Docker也稱為docker或者docker-engine,如果安裝了這些,解除安裝他們和解除安裝他們的依賴項

 $ sudo yum remove docker \
              docker-common \
              container-selinux \
              docker-selinux \
              docker-engine

如果yum報告這些包沒有一個被安裝那麼就是OK的啦。

/var/lib/docker/的內容,包括映象,容器、資料卷和網路都被保留,DockerEE包現在被稱為docker-ee

使用 yum 安裝

執行以下命令安裝依賴包:

$ sudo yum install -y yum-utils \
           device-mapper-persistent-data \
           lvm2

鑑於國內網路問題,強烈建議使用國內源,官方源請在註釋中檢視。

執行下面的命令新增 yum 軟體源:

$ sudo yum-config-manager \
    --add-repo \
    https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo


# 官方源
# $ sudo yum-config-manager \
#     --add-repo \
#     https://download.docker.com/linux/centos/docker-ce.repo    

如果需要最新版本的 Docker CE 請使用以下命令:

$ sudo yum-config-manager --enable docker-ce-edge

如果需要測試版本的 Docker CE 請使用以下命令:

$ sudo yum-config-manager --enable docker-ce-test
安裝 Docker CE

更新 yum 軟體源快取,並安裝 docker-ce

$ sudo yum makecache fast
$ sudo yum install docker-ce
使用指令碼自動安裝

在測試或開發環境中 Docker 官方為了簡化安裝流程,提供了一套便捷的安裝指令碼,CentOS 系統上可以使用這套指令碼安裝:

$ curl -fsSL get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh --mirror Aliyun

執行這個命令後,指令碼就會自動的將一切準備工作做好,並且把 Docker CE 的 Edge 版本安裝在系統中。

啟動 Docker CE
$ sudo systemctl enable docker
$ sudo systemctl start docker
建立 docker 使用者組

預設情況下,docker 命令會使用 Unix socket 與 Docker 引擎通訊。而只有 root 使用者和 docker 組的使用者才可以訪問 Docker 引擎的 Unix socket。出於安全考慮,一般 Linux 系統上不會直接使用 root 使用者。因此,更好地做法是將需要使用 docker 的使用者加入 docker 使用者組。

建立 docker 組:

$ sudo groupadd docker

將當前使用者加入 docker 組:

$ sudo usermod -aG docker $USER

退出當前終端並重新登入,進行如下測試。

測試 Docker 是否安裝正確
$ docker run hello-world

Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
ca4f61b1923c: Pull complete
Digest: sha256:be0cd392e45be79ffeffa6b05338b98ebb16c87b255f48e297ec7f98e123905c
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://cloud.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/engine/userguide/

若能正常輸出以上資訊,則說明安裝成功。

新增核心引數

預設配置下,如果在 CentOS 使用 Docker CE 看到下面的這些警告資訊:

WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled

請新增核心配置引數以啟用這些功能。

$ sudo tee -a /etc/sysctl.conf <<-EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF

然後重新載入 sysctl.conf 即可

$ sudo sysctl -p

3、在Fedora下安裝docker

要在Fedora下面安裝Docker,確保你滿足下面的先決條件,然後再安裝Docker。

先決條件

DockerEE客戶端:
DockerEE不支援Fedora平臺,

系統滿足的條件

為了安裝Dockers,你需要64位的Fedora下面這些版本中的一個:

  • 24
  • 25
解除安裝老版本的Docker

老版本的Dockers稱為docker或者docker-engine,如果你安裝了他們,想要解除安裝Docker,使用下面的命令

$ sudo dnf remove docker \
                 docker-common \
                 container-selinux \
                 docker-selinux \
                 docker-engine

如果dnf報告這些包沒有一個被安裝,那麼久OK了。
/var/lib/docker/的內容是被隱藏的,裡面包含了映象,容器,資料券和網路;DockerCE包現在被稱為docker-ce。

安裝DockerCE

你可以根據你的需求用不同的方式來安裝DockerCE:

  • 大多數使用者通過配置docker倉庫來安裝docker,這樣做的優點是每一次安裝和更新任務都是輕鬆的。這也是官方比較推薦的方法。
  • 一些使用者下載PRM包手動地安裝docker並且升級的時候也是完全手動的。這是在沒有和外界網路連線的主機上安裝docker的有效方法
安裝使用倉庫

在你在你的新主機上第一次安裝docker之前,你需要配置docker倉庫,以後你就可以通過倉庫來安裝和更新docker,

配置docker倉庫

安裝提供命令管理DNF倉庫的dnf-plugins-core

$ sudo dnf -y install dnf-plugins-core

使用下面的命令配置stable倉庫,你總是需要stable容器,即使你也想過安裝edge倉庫

$ sudo dnf config-manager \
    --add-repo \
    https://download.docker.com/linux/fedora/docker-ce.repo

可選擇的:能用的邊緣倉庫,這個倉庫包含在docker.repo上但是預設是不能用的,你可以在stable倉庫變使它變得可用

$ sudo dnf config-manager --set-enabled docker-ce-edge

你可以通過執行DNF帶有–disable flag的配置管理命令來是edge倉庫不能用,下面這條命令是使edge倉庫不能被使用的命令

$ sudo dnf config-manager --set-disabled docker-ce-edge
通過命令列安裝dockerCE

1.安裝最新版本的DockerCE,也可以安裝指定版本的Docker

$ sudo dnf install docker-ce

如果這是您第一次從最近新增的儲存庫安裝軟體包,系統會提示您接受GPG金鑰,並顯示金鑰的指紋。 確認指紋是否與060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35匹配,如果是,請接受金鑰。

有多個Docker儲存庫?

如果啟用了多個Docker儲存庫,則在未指定dnf install或dnf update命令中的版本的情況下安裝或更新將始終安裝儘可能高的版本,這可能不適合您的穩定性需求。

2.在生產系統上,您應該安裝特定版本的Docker CE,而不是始終使用最新版本。 列出可用的版本。 此示例使用sort -r命令將結果按版本號排序,從最高到最低並被截斷。

$ dnf list docker-ce  --showduplicates | sort -r
docker-ce.x86_64  17.12.0.fc26  docker-ce-stable

列表的內容取決於啟用了哪些儲存庫,並且特定於您的Fedora版本(在此示例中,由版本中的.fc26字尾指示)。 選擇一個特定的版本進行安裝。 第二列是版本字串。 第三列是儲存庫名稱,它指示軟體包來自哪個儲存庫並且通過擴充套件其穩定性級別。 要安裝特定版本,請將版本字串附加到包名稱並用連字元( - )分隔:

$ sudo dnf -y install docker-ce-<VERSION>

3.啟動Docker

$ sudo systemctl start docker

4.通過執行hello-world映像驗證Docker CE是否已正確安裝。

$ sudo docker run hello-world

該命令下載測試影象並將其執行到容器中。 當容器執行時,它會列印一條資訊訊息並退出。

Docker CE已安裝並正在執行。 您需要使用sudo來執行Docker命令。 繼續Linux postinstall以允許非特權使用者執行Docker命令以及其他可選配置步驟。

升級DOCKER CE

要升級Docker CE,請按照安裝說明進行操作,選擇要安裝的新版本。

通過包安裝Docker

如果您無法使用Docker的儲存庫來安裝Docker,則可以下載用於釋出的.rpm檔案並手動安裝。 每次要升級Docker CE時,都需要下載一個新檔案。

1.去https://download.docker.com/linux/fedora/並選擇您的Fedora版本。 轉到x86_64/stable/Packages/並下載要安裝的Docker版本的.rpm檔案。
注:要安裝edge包,請將上述URL中的stable字改為edge。

2.安裝Docker CE,將下面的路徑更改為您下載Docker軟體包的路徑。

$ sudo dnf -y install /path/to/package.rpm

3.啟動Docker

$ sudo systemctl start docker

4.通過執行hello-world映像驗證Docker CE是否已正確安裝。

$ sudo docker run hello-world

該命令下載測試影象並將其執行到容器中。 當容器執行時,它會列印一條資訊訊息並退出。

Docker CE已安裝並正在執行。 您需要使用sudo來執行Docker命令。 繼續執行Linux的安裝後步驟,以允許非特權使用者執行Docker命令以及其他可選配置步驟。

升級DOCKER CE

要升級Docker CE,請下載較新的軟體包檔案並重復安裝過程,使用dnf -y upgrade而不是dnf -y install,然後指向新檔案。

使用便捷指令碼進行安裝

Docker在get.docker.com和test.docker.com上提供了便捷指令碼,用於快速非互動式地將Docker CE的邊緣和測試版本安裝到開發環境中。 這些指令碼的原始碼位於docker-install儲存庫中。 不建議在生產環境中使用這些指令碼,並且在使用它們之前應瞭解潛在風險

1.指令碼需要root或sudo許可權才能執行。 因此,在執行指令碼之前,應仔細檢查和稽核指令碼。
2.這些指令碼會嘗試檢測您的Linux發行版和版本,併為您配置您的軟體包管理系統。 另外,這些指令碼不允許您自定義任何安裝引數。 這可能會導致不支援的配置,無論是從Docker的角度還是從您自己的組織準則和標準。
3.這些指令碼會安裝包管理器的所有依賴關係和建議,而不要求確認。 這可能會安裝大量的包,具體取決於主機的當前配置。
4.該指令碼不提供指定要安裝哪個版本的Docker的選項,並安裝在“邊緣”通道中釋出的最新版本。
5.如果Docker已經使用其他機制安裝在主機上,請不要使用便捷指令碼。

本示例使用get.docker.com上的指令碼在Linux上安裝Docker CE的最新版本。 要安裝最新的測試版本,請改用test.docker.com。 在下面的每個命令中,將每個出現的get替換為test。

$ curl -fsSL get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh

<output truncated>

If you would like to use Docker as a non-root user, you should now consider
adding your user to the "docker" group with something like:

  sudo usermod -aG docker your-user

Remember to log out and back in for this to take effect!

WARN