基於ECS快速搭建 Docker 環境

2020-09-28 09:03:11

基於ECS快速搭建Docker環境

背景知識

  • 容器技術
    • 容器是一個允許我們在資源隔離的過程中,執行應用程式和其依賴的、輕量的、作業系統級別的虛擬化技術,執行應用程式所需的所有必要元件都打包為單個映象,這個映象是可以重複使用的。當映象執行時,它是執行在獨立的環境中,並不會和其他的應用共用主機作業系統記憶體、CPU或磁碟,這保證了容器內的程序不會影響到容器外的任何程序
    • 簡單來說就是一個不會相互影響的獨立的執行環境
  • Docker
    • Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然後釋出到任何流行的 Linux 機器或 Windows 機器上,也可以實現虛擬化,容器是完全使用沙箱機制,相互之間不會有任何介面。Docker底層用的 Linux 的 cgroup 和 namespace 這兩項技術來實現應用隔離,一個完整的 Docker 有以下幾個部分組成:
      • Docker Client 使用者端
      • Docker Daemon 守護行程
      • Docker Image 映象
      • Docker Container 容器

1. 建立資源

  • 我們使用阿里雲提供的免費資源,稍等1分鐘就建立成功了
     
    在這裡插入圖片描述

2. 連線ECS伺服器

  • 連線成功後如下
     
    在這裡插入圖片描述

3. 安裝 Docker CE

Docker有兩個分支版本:Docker CE【社群版】 和 Docker EE【企業版】 ,這裡我們安裝社群版

  • 安裝 Docker 的依賴庫
    • 命令:yum install -y yum-utils device-mapper-persistent-data lvm2
    • 安裝成功後如下
       
      在這裡插入圖片描述
  • 新增 Docker CE 的軟體源資訊
    • 命令:yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    • 成功後如下
       
      在這裡插入圖片描述
  • 安裝 Docker CE
    • 命令:yum makecache fast
                 yum -y install docker-ce
    • 結果如下
       
      在這裡插入圖片描述
      在這裡插入圖片描述
  • 啟動 Docker 服務
    • 命令:systemctl start docker
       
      在這裡插入圖片描述

4. 設定阿里雲映象倉庫(映象加速)

Docker的預設官方遠端倉庫是 hub.docker.com ,但是國內下載比較慢,這裡我們使用阿里雲映象倉庫下載

4.1 登入容器映象服務控制檯

  • 我們使用在雲產品資源中提供的子使用者名稱稱子使用者密碼登入容器映象服務控制檯
     
    在這裡插入圖片描述
  • 登入後介面如下
     
    在這裡插入圖片描述
  • 搜尋 容器映象服務 ,點選登入控制檯
     
    在這裡插入圖片描述
  • 出現提示開通服務,直接關閉即可
     
    在這裡插入圖片描述

4.2 獲取映象加速地址

  • 點選【映象加速器】,可以看到阿里雲提供的專屬映象加速地址
     
    在這裡插入圖片描述

4.3 設定 Docker 的自定義映象倉庫地址

  • 命令如下【將 registry-mirrors 對應的地址改為上一步獲取到的地址】
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://kqh8****.mirror.aliyuncs.com"]
}
EOF
  • 執行後結果如下
     
    在這裡插入圖片描述
  • 重新載入服務組態檔
    • 命令:systemctl daemon-reload
  • 重新啟動 Docker 服務
    • 命令:systemctl restart docker
       
      在這裡插入圖片描述

5. 使用 Docker 安裝 Nginx 服務

  • 檢視 Docker 映象倉庫中 Nginx 的可用版本
    • 命令:docker serach nginx
    • 命令執行後如下
       
      在這裡插入圖片描述
  • 拉取最新版的 Nginx 映象
    • 命令:docker pull nginx:latest
    • 執行後結果如下
       
      在這裡插入圖片描述
  • 檢視本地映象
    • 命令:docker images
    • 命令輸入如下
       
      在這裡插入圖片描述
  • 執行容器
    • 命令:docker run --name nainx-test -p 8080:80 -d nginx
    • 命令輸入如下
       
      在這裡插入圖片描述

引數說明:

  • –name nginx-test:容器名稱
  • -p 8080:80:埠進行對映,將本地8080埠對映到容器內部的80埠。
  • -d nginx:設定容器在後臺一直執行
  • 在瀏覽器位址列輸入 http://<ECS公網地址>:8080存取Nginx服務。
     
    在這裡插入圖片描述