Docker入門第一章

Docker爲何出現? 


一款產品:開發到上線 兩套環境!應用環境,應用配置!java

可能在開發環境你的產品是正常的,可是到了線上環境你的產品可能就會出現各類緣由,或許是由於環境的不一樣,也多是由於配置的不一樣等等各類緣由致使服務的不可用!對於運維來講,考驗就很是大。sql

環境配置是十分的麻煩,每個機器都要部署環境(集羣Redis、ES、Hadoop等等)!費時費力。docker

如今你須要發佈一個項目(jar包 +(環境 Redis、Mysql、JDK、ES)),項目須要帶上環境安裝打包!此時Docker就能夠幫你解決。服務器

至關於Docker幫你將jar包和環境打包到一塊兒部署上線,一套流程作完!運維

舉個抽象的例子你用Java開發的apk應用(應用商店)而後呂世昊使用apk安裝便可使用,而Docker是你用java開發一個jar,而後依賴一些環境如Mysql等等,而你只須要將這個jar和環境打包成一個鏡像文件而後發佈Docker倉庫中(商店),呂世昊就能夠下載你發佈的Docker鏡像,一鍵運行就ok了。oop

Docker簡介


Docker是基於Go語言開發的!開源項目!測試

Docker的官網:https://www.docker.comui

Docker的文檔地址:https://docs.docker.com/   (Docker的文檔是超級詳細的)阿里雲

Docker的下載:(進入Docker文檔頁面就有下載的入口)操作系統

Docker的倉庫地址:https://hub.docker.com/

Docker和虛擬機的不一樣


傳統虛擬機,虛擬出一條硬件,運行一個完整的操做系統,而後在這個系統上安裝和運行軟件

Docker容器內的應用直接運行在宿主機的內容,Docker容器是沒有本身的內核的,也沒有虛擬咱們的硬件,因此就輕便了

每一個Docker容器間是互相隔離,每一個Docker容器內都有一個屬於本身的文件系統,互不影響。

Docker的好處


應用更快速的交付和部署

          傳統:給你一大堆幫助文檔,安裝程序。

          Docker:打包鏡像發佈測試,一鍵運行。

更便捷的升級和擴縮容

          使用了Docker以後,咱們部署應用就和搭積木同樣!

          項目打包爲一個鏡像,擴展 服務器A!服務器B!

更簡單的系統運維

           在容器化以後,咱們的開發,測試環境都是高度一致的。

更高效的計算資源利用:

           Docker是內核級別的虛擬化,在一個物理機上能夠運行不少容器實例。

Docker的基本組成


  • Client:客戶端
  • DOCKER_HOST:Docker的服務
  • Registry:遠程倉庫
  • docker build:構建一個容器
  • docker pull:拉取一個容器
  • docker run:運行一個容器
  • Docker daemon:Docker的守護進程
  • Images:鏡像(能夠理解爲Class類)(鏡像就比如是一個模板,能夠經過模板建立容器實例或者說容器服務,一個鏡像能夠建立多個實例)
  • Containers:多個容器(能夠理解爲類實例出來的對象)(能夠對容器進行啓動,中止,刪除等基本命令)
  • Registry:遠程倉庫(存放鏡像的地方,倉庫分爲公有倉庫和私有倉庫)(Docker Hub是國外的共有倉庫地址,能夠配置鏡像加速使用國內阿里雲的倉庫)
相關文章
相關標籤/搜索