Docker詳解(一)

  • 2019 年 10 月 3 日
  • 筆記

序言:眾所周知,近幾年的互聯網各項技術發展的如火如荼,敏捷開發模式越來越普及,「快」似乎成為了行業的標準,於是頹勢了十幾年的 devops理念重新被提及,CICD 也逐漸泛化。當然這些或多或少會有 docker 的影子。我想如果 沒有 docker 的橫空出世,這些實現起來似乎有些困難

Docker簡介

是什麼:有助於持續集成和部署的 容器虛擬化技術,運行環境和配置的標準化解決方案。

docker官網

 

可能大家都聽過虛擬機技術,那麼虛擬機技術和容器虛擬化技術有何區別?

虛擬機技術:虛擬機是帶環境安裝的一種解決方案,它可以在作業系統裡面運行另一種作業系統。以作業系統為中心,從作業系統層下手,目標是建立一個可以用來執行整套作業系統的沙盒獨立執行環境。

缺點:資源佔用較多,啟動較慢,操作步驟較為繁雜。

容器虛擬化技術:由於前面虛擬機存在這些缺點,Linux 發展出了另一種虛擬化技術:Linux 容器(Linux Containers,縮寫為 LXC)。 以應用程式為中心,隔離進程,共享作業系統內核,只需工作軟體所需庫資源的設置。

 

 

Docker組成

docker的基本組成

  • 鏡像(image):Docker鏡像就是一個只讀的模板。鏡像可以用來創建Docker容器,一個鏡像可以創建很多容器。
  • 容器(container):Docker 利用容器 獨立運行一個或一組應用。容器是用鏡像創建的運行實例。
  • 倉庫(Repository):倉庫是集中存放鏡像文件的場所。倉庫分為公開倉庫(Public)和私有倉庫(Private)兩種形式。最大的公開倉庫是 Docker Hub(https://hub.docker.com/),中國的公開倉庫包括阿里雲 、網易雲 等

 

docker架構圖

 

永遠的HelloWorld

註:默認docker已安裝,安裝教程可以百度搜索,此處不再贅述。此處的HelloWorld因為牆的原因,將採用阿里雲鏡像加速的方式

步驟:

  1. 註冊一個屬於自己的阿里雲賬戶
  2. 獲取阿里雲加速器地址(免費)

     
  3. 配置本機運行Docker 運行鏡像加速器
    vim /etc/sysconfig/docker,將獲得的自己賬戶下的阿里雲加速地址配置進
    other_args="--registry-mirror= https://xxxx.mirror.aliyuncs.com"

     
  4. 重啟Docker後台服務:service docker restart
    如果從結果中看到了配置的--registry-mirror參數說明配置成功

     
  5. 啟動 docker 後台容器,測試運行 hello-world

     
    docker run xx 命令幹了什麼?

Tags: