Docker

什么是docker

Docker is the world's leading software containerization platform.
Docker 是一個開源的應用容器引擎,讓開發(fā)者可以打包他們的應用以及依賴包到一個可移植的容器中,然后發(fā)布到任何流行的Linux機器上,也可以實現虛擬化。


為什么要用docker

舉個栗子

假設用戶試圖基于最常見的LAMP(Linux+Apache+MySQL+PHP)組合來運維一個網站。

傳統(tǒng)做法:
  1. 需要安裝Apache、MySQL和PHP以及它們各自運行所依賴的環(huán)境;
  2. 分別對它們進行配置(包括創(chuàng)建合適的用戶、配置參數等);
  3. 之后需要進行功能測試,看是否工作正常,如果不正常,意味著更多的時間代價和不可控的風險。

如果再加上更多的應用,事情會變得更加難以處理,而且一旦需要服務器遷移(例如從阿里云遷移到騰訊云),則需要重新部署和調試。大大地降低了工作效率

Docker:
  1. 通過容器來打包應用
  2. 遷移只需要在新的服務器上啟動需要的容器就可以了

docker節(jié)約了大量的寶貴時間,并降低部署過程出現問題的風險


Docker與傳統(tǒng)虛擬機對比
Docker容器與傳統(tǒng)虛擬機對比

Docker有以下幾個優(yōu)點:
  • 更快速的交付和部署
  • 更高效的虛擬化
  • 更輕松的遷移和擴展
  • 更簡單的管理

Docker基本概念
  • 鏡像(Image)
    類似于虛擬機鏡像,可以理解為一個面向Docker引擎的只讀模板,包含了文件系統(tǒng)
  • 容器(Container)
    類似于一個輕量級的沙箱,Docker利用容器來運行和隔離應用
  • 倉庫(Repository)
    類似于代碼倉庫,是Docker集中存放鏡像文件的場所。
    注:Docker利用倉庫管理鏡像的設計理念與Git非常相似

倉庫、鏡像、容器之間的關系
  • 鏡像是創(chuàng)建Docker容器的基礎,容器是從鏡像創(chuàng)建的應用運行實例,鏡像自身是只讀的,容器鏡像啟動的時候,Docker會在鏡像的最上層創(chuàng)建一個可寫層,鏡像本身保持不變;
  • 倉庫是Docker集中存放鏡像文件的場所。

在使用docker命令的時候總要加上sudo,以下三句代碼可以解決這個問題。

$sudo groupadd docker
#將當前用戶加入docker組
$sudo gpasswd -a ${USER} docker
#重啟docker服務
$sudo service docker restart

鏡像操作常用命令

鏡像是只讀的

  • docker pull NAME[:TAG]從網上下載鏡像
  • docker images列出本地主機上已有的鏡像
  • docker rmi IMAGE[IMAGE...]刪除鏡像,其中IMAGE可以為TAG或ID
    注意:若該鏡像創(chuàng)建的容器存在,鏡像文件無法刪除,必須刪除該鏡像創(chuàng)建的容器后,才可以刪除該鏡像

容器操作常用命令
  • docker create新建一個容器
  • docker ps查看容器
  • docker start啟動容器
  • docker run新建并啟動一個容器
  • docker stop終止容器
  • docker restart重啟容器
  • docker exec進入容器操作
  • docker rm刪除處于終止狀態(tài)的容器
  • 參數
    • -t讓Docker分配一個偽終端(pseudo-tty)并綁定到容器的標準輸入上
    • -i讓容器的標準輸入保持打開
    • -d讓容器在后臺以守護態(tài)(Daemonized)形式運行
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Docker — 云時代的程序分發(fā)方式 要說最近一年云計算業(yè)界有什么大事件?Google Compute Engi...
    ahohoho閱讀 15,850評論 15 147
  • 轉載自 http://blog.opskumu.com/docker.html 一、Docker 簡介 Docke...
    極客圈閱讀 10,755評論 0 120
  • 0x01 核心概念 Docker鏡像類似于虛擬機鏡像,可以理解為一個面向Docker引擎的只讀模板,包含了文件系統(tǒng)...
    閑云逸心閱讀 4,962評論 0 9
  • 寫這篇文章主要是為了今后畢業(yè)論文素材上的整理,同時對docker進行鞏固溫習。大綱: docker簡介docker...
    胡圖仙人閱讀 7,768評論 2 96
  • 不知何時起,習慣了安靜,習慣了沉默,沒有了曾經的那種激情,在23歲的年紀,沒有了本應該的明媚。 看著匆匆流逝的時間...
    董芷序dzx閱讀 383評論 0 0

友情鏈接更多精彩內容