Docker詳解(一)
- 2019 年 10 月 3 日
- 筆記
序言:眾所周知,近幾年的互聯網各項技術發展的如火如荼,敏捷開發模式越來越普及,「快」似乎成為了行業的標準,於是頹勢了十幾年的 devops理念重新被提及,CICD 也逐漸泛化。當然這些或多或少會有 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因為牆的原因,將採用阿里雲鏡像加速的方式
步驟:
- 註冊一個屬於自己的阿里雲賬戶
- 獲取阿里雲加速器地址(免費)

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

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

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

docker run xx 命令幹了什麼?
