Docker學習筆記1-Docker簡介

Docker簡介

一、前置知識和課程定位

  1. 前置知識

    1.1 強制

    熟悉linux命令和相關背景知識

    1.2 建議

    Maven和Git相關的知識

    Git倉庫、Git命令

  2. 課程時間

    1.5 天

  3. 課程定位和範圍(立足於我們的JavaEE方向)

    3.1 參考招聘網方向(java開發和docker開發)

    • JavaEE java SpringMVC/springboot/mybatis……
    • Docker Go docker開發運維方向

    3.2 視頻發佈風格

    • Docker基礎篇(快速上手)
    • Docker 高級篇

二、Docker 是什麼

  1. 爲什麼會有Docker出現

    解決開發和運維之間的相愛相殺,簡單說就是之前搬家式交付代碼改爲現在搬樓式交付

  2. Docker理念

    Docker是基於Go語言開發的

    Build,Ship and Run Any App,Anywhere

    只需要一次配置好環境,換到別的機子上就可以一鍵部署好,大大簡化了操作。

  3. Docker是什麼

    解決了運行環境和配置問題軟件容器,方便做持續集成並有助於整體發佈的容器虛擬化技術。

三、Docker能幹什麼

  1. 之前的虛擬機技術

    虛擬機技術:
    可以在一種操作系統中運行另一種操作系統。而對於底層系統來說,虛擬機就是一個普通的文件。
    這類虛擬機完美的運行了另一套系統,能夠使應用程序,操作系統,和硬件三者之間的邏輯不變。

    缺點:

    (1)資源佔用多;
    (2)冗餘步驟多
    (3)啓動慢
    
  2. 容器虛擬化技術

    由於之前的虛擬機存在的諸多缺點,Linux發展出了另一種虛擬化的技術:Linux容器技術

    Linux容器不是模擬一個完整的操作系統,而是對進程進行了隔離。

    有了容器,就可以將軟件運行所需要的所有資源打包到一個隔離的容器中。

    容器與虛擬機不同,不需要捆綁一整套操作系統,只需要軟件工作所需的庫資源和設置。

    因此,系統高效,輕量。

    Docker和傳統虛擬機比較:

    • 傳統的虛擬機技術,是虛擬出一套硬件,在其上運行一個完整的操作系統,在該系統上運行所需的應用進程
    • 容器內的應用進程直接運行在宿主機的內核中,容器沒有自己的內核,而且也沒有對硬件進行虛擬
    • 每個容器之間互相隔離,每個容器有自己的文件系統,容器之間進程不會互相影響,能區分計算資源

    Docker實質是一個濃縮的linux系統

  3. 開發/運維(DevOps)

    開發自運維

    一次構建,隨處運行

    更快速的應用交付和部署
    
    更便捷的擴容縮容
    
    更簡單的系統運維
    
    更高效的計算資源利用
    

四、去哪兒下

凡技術,必官網

  1. 官網

    Docker官網:

    Docker中文網站:https://www.docker-cn.com/

  2. 倉庫

    Docker的三要素:鏡像、容器、倉庫

    Dockerhub :倉庫https://hub.docker.com/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章