1. 程式人生 > 其它 >Docker(2)-CentOS安裝

Docker(2)-CentOS安裝

前言

本人文章均引用或者複製:

公眾號:

QQ群:806951874

在Centos系統中安裝Docker

前言

網上很多關於docker在centos系統上的安裝教程,但是又各有異同,比較混亂。所以,此文章接下來的對於docker的安裝,將參照官方的文件進行安裝。

官方文件地址:https://docs.docker.com/install/linux/docker-ce/centos/

Docker版本

Docker如今劃分成了2個版本:

  • Docker CE(社群版)
  • Docker EE(企業版)

具體詳情以及區別,就不多做說明了。我們一般都會選擇Docker CE(社群版),因為CE版本是開源免費的。對於大多數企業公司都比較節約成本。

因此,文章中所使用的Docker版本均為Docker CE版本。

安裝Docker CE版本的先決條件

官方文件中有這樣一段描述:

> OS requirements
> To install Docker CE, you need a maintained version of CentOS 7. Archived versions aren’t supported or tested.

翻譯過來的中文意思就是:

OS要求

要安裝Docker CE,您需要維護的CentOS 7版本。不支援或測試歸檔版本。

官方推薦的系統是centos7以上,但其實centos6也是可以安裝docker的,並沒有強制必須是centos7。

但是我的文章是基於最新的centos7系統,所以對於低版本的centos系統如何安裝docker,請自行網上查詢資料或者實際操作。

解除安裝舊版本

老版本的Docker被稱為docker或docker-engine。如果安裝了它們,請解除安裝它們以及相關的依賴項。

在Linux命令列執行的命令如下:

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine \

安裝Docker CE

Docker CE安裝的不同方式

  • 設定Docker的儲存庫並從中進行安裝,以便安裝和升級任務。這是推薦的方法。
  • 有些使用者下載RPM軟體包並手動安裝,並完全手動管理升級。這對於在無法訪問網際網路的系統上安裝Docker等情況很有用。
  • 在測試和開發環境中,一些使用者選擇使用自動便利指令碼來安裝Docker。

這裡我們就選擇第一種方式進行安裝,這也是推薦的做法。

至於其他的安裝方式,可自行網上學習,這裡不做過多講解。

使用儲存庫進行安裝

首次在新主機上安裝Docker CE之前,需要設定Docker儲存庫。之後,您可以從儲存庫安裝和更新Docker。

設定儲存庫

  • 安裝所需的包。 yum-utils提供yum-config-manager實用程式,devicemapper儲存驅動程式需要device-mapper-persistent-data和lvm2。
yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2 \
  • 使用以下命令設定穩定的儲存庫。 即使您想從邊緣或測試儲存庫安裝構建,也總是需要穩定的儲存庫。
yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
  • (可選):啟用邊緣和測試儲存庫。 這些儲存庫包含在上面的docker.repo檔案中,但預設情況下處於禁用狀態。 您可以將它們與穩定的儲存庫一起啟用。
yum-config-manager --enable docker-ce-edge
yum-config-manager --enable docker-ce-test
  • (可選):與上一步相反的作用。通過使用–disable標誌執行yum-config-manager命令,可以禁用邊緣或測試儲存庫。 要重新啟用它,請使用–enable標誌。 以下命令禁用邊緣儲存庫。
yum-config-manager --disable docker-ce-edge

注意:從Docker 17.06開始,穩定版本也被推到邊緣測試版本庫。

瞭解穩定和邊緣構建 :https://docs.docker.com/install/

安裝Docker CE

  1. 安裝最新版本的Docker CE:
yum install docker-ce

如果命令列下面出現如下圖所示的確認資訊,請輸入“y”繼續,主要是用於處理依賴包的事情

如果沒有,則需要新增yum源:

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

上一步輸入“y”之後,後面可能會遇到下圖所示的確認提示資訊,同樣的輸入“y”即可:

稍作等待,當命令列最終輸出“Complete!”即表示安裝完成:

啟動Docker

systemctl start docker

驗證Docker是否安裝成功

最簡單的驗證方式,就是使用 docker version 命令,類似於JDK的 java -version 一樣的道理。

Docker安裝成功的話,就可以直接在命令列執行Docker的命令的。

docker version

如果出現如下圖所示資訊,說明Docker以及安裝成功了!

【可選】:當然,你也可以通過執行 hello-world 映像來檢驗Docker是否安裝成功:

docker run hello-world

上面的命令含義:下載官方提供的用於測試使用的hello-world映象並將其執行到容器中,來檢驗Docker服務是否正常安裝並執行。

執行上面的命令之後,Docker會自動下載hello-world映象並自動執行到容器中,當命令列中出現“Hello from Docker!”的字樣,說明已經成功運行了hello-world映象,一切就OK了!

這裡就簡單的作為Docker的入門操作,很簡單的吧。讓你有一個比較直觀的感覺~

Docker預設掛載目錄

Docker CE安裝成功之後,你可以發現 /var/lib 目錄下有一個 docker 目錄,你可以進入Docker目錄檢視Docker的一些結構,如下圖所示:

其中有一個containers 目錄,這個目錄就是存放Docker容器的。上面我們有提及到 hello-world 映象,如果你運行了 hello-world 映象,那麼這個映象所生成的容器資訊,就會儲存在 containers 目錄中。

具體 containers 目錄中存放了什麼內容,可自行網上查詢資料學習。

啟動Docker

配置Docker在系統啟動時啟動

未配置Docker在系統啟動時啟動,則系統重啟之後,Docker服務是無法正常訪問

如何解決?

手動啟動Docker服務:

通過在命令列中執行以下命令,即可實現Docker服務的啟動:

systemctl start docker

這時候重新在命令列中執行 docker version命令,效果如下:

出現Server相關的資訊,標明Docker服務正常啟動了,就可以對Docker進行一系列操作

上面這種啟動方式存在什麼不足呢?

當伺服器重啟的時候,Docker服務依然不能自動啟動,還是需要手工去啟動Docker服務。

那能不能做到系統重啟之後,Docker服務自動啟動,答案肯定是有的。

實現Docker服務隨著系統重啟後自動啟動

大多數當前的Linux發行版(RHEL,CentOS,Fedora,Ubuntu 16.04和更高版本)使用systemd來管理在系統啟動時啟動哪些服務。

通過在命令列執行以下命令,用於設定Docker在系統重啟時,自動啟動Docker服務

systemctl enable docker

執行該命令之後,會顯示如下結果:

主要的意思就是 設定Docker服務會隨著伺服器重啟,會自動啟動Docker服務。

當然,執行該命令之後,對於當前的Docker服務狀況是沒有啟動服務的,需要手動啟動Docker服務;只有下次伺服器重啟,就無需手動啟動Docker服務了。

官方文件介紹:https://docs.docker.com/install/linux/linux-postinstall/#configure-docker-to-start-on-boot

注意一點:由於Linux不同版本的系統的差異、或者低版本的系統,命令或許會出現差異。如有遇到這樣的問題,請自行網上查詢資料解決。

解除安裝Docker CE

如果需要解除安裝機器上已經安裝的Docker CE,可以通過簡單命令實現。

  1. 解除安裝Docker包:
yum remove docker-ce
  1. 上面的命令,不會自動刪除主機上的影象,容器,卷或自定義配置檔案。要想刪除所有影象,容器和卷,執行以下命令:
rm -rf /var/lib/docker

注意:必須手動刪除任何已編輯的配置檔案

shell一鍵安裝

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

這樣執行完了就完成安裝了,簡單便捷

然後啟動docker

sudo systemctl start docker