1. 程式人生 > 其它 >Docker入門第一章

Docker入門第一章

Docker為什麼出現?


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

可能在開發環境你的產品是正常的,但是到了線上環境你的產品可能就會出現各種原因,或許是因為環境的不同,也可能是因為配置的不同等等各種原因導致服務的不可用!對於運維來說,考驗就非常大。

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

現在你需要釋出一個專案(jar包 +(環境 Redis、Mysql、JDK、ES)),專案需要帶上環境安裝打包!此時Docker就可以幫你解決。

相當於Docker幫你將jar包和環境打包到一起部署上線,一套流程做完!

舉個抽象的例子你用Java開發的apk應用(應用商店)然後呂世昊使用apk安裝即可使用,而Docker是你用java開發一個jar,然後依賴一些環境如Mysql等等,而你只需要將這個jar和環境打包成一個映象檔案然後釋出Docker倉庫中(商店),呂世昊就可以下載你釋出的Docker映象,一鍵執行就ok了。

Docker簡介


Docker是基於Go語言開發的!開源專案!

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

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是國外的共有倉庫地址,可以配置映象加速使用國內阿里雲的倉庫)

---------------------------------------------------------------------------------------------------------------------------------------------------------------------

作者:呂世昊 出處:https://www.cnblogs.com/lvshihao/p/15135107.html

個性簽名:學習如逆水行舟,不進則退!

如果覺得這篇文章對你有小小的幫助的話,記得在右下角點個“推薦”哦,博主在此感謝!