中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Docker 入門

發布時間:2020-07-31 20:02:04 來源:網絡 閱讀:454 作者:運維少年 欄目:云計算

Docker 入門

首發:arppinging

一、Docker是什么?

Docker是一種容器技術,也是虛擬化技術的一種。

1)虛擬化技術分類

1.1 主機級虛擬化

主機級虛擬化可以分為兩種,分別是Type-Ⅰ和Type-Ⅱ,下面分別介紹這兩種主機虛擬化。

1.1.1 Type-Ⅰ

Docker 入門

Type-Ⅰ的主機級虛擬化,直接在物理硬件上面安裝虛擬化操作系統,如Vmware的ESXi,然后在虛擬化層上安裝虛擬機。

1.1.2 Type-Ⅱ

Docker 入門

Type-Ⅱ主機級虛擬化:在原有的操作系統上面安裝虛擬化軟件,比如vmware workstation等,再在虛擬化軟件上創建操作系統。

1.2 容器級虛擬化

Docker 入門

可以看出,在容器級虛擬化中,容器中是沒有獨立的操作系統內核的,容器直接部署在主機的操作系統上。

1.3 幾種虛擬化技術的優劣

1、type-Ⅰ虛擬化:每個虛擬機都有自己獨立的系統內核,可以直接通過虛擬化層和硬件交互。
2、Type-Ⅱ虛擬化:每個虛擬機都有自己獨立的操作系統,想比type-Ⅰ,增加了一層虛擬化軟件,而虛擬化軟件本身可能會存在安全風險。
3、容器級虛擬化:在容器級虛擬化中,所有的容器都共享一個內核,在隔離性方面沒有主機級虛擬化那么徹底。

2)Docker的優勢

1、docker容器啟動速度快,大多數docker容器只需要不到1s的時間即可啟動。
2、docker建模簡單、快捷,用戶只需要幾分鐘即可把自己的程序“docker化”
3、使職責的邏輯分離,開發人員只需要關心容器中運行的應用程序,而運維人員只需要關心如何管理容器即可。
4、快速、高效的開發生命周期,docker具有很高的移植性。
5、docker使得分布式應用程序部署更加方面。

二、docker組件

1) Docker客戶端和服務器

Docker是一個C/S架構的程序,Docker客戶端只需向服務器或守護進程發出請求,服務器或守護進程將完成所有的工作并返回結果。
客戶端和服務器可以在同一臺服務器上,也可以是不同的機器。可以將服務器理解為nginx服務,客戶端理解為web瀏覽器即可。

Docker 入門

2) Docker鏡像

鏡像時Docker的基石,用戶基于鏡像運行容器。鏡像類似于可導入vmware workstation 運行的ova文件,只不過docker的鏡像只需要創建和運行即可,不需要再次構建系統內核。鏡像就是容器的“源代碼”,體積小、易分享和更新。

3) Registry

Registry是存放鏡像的倉庫,Registry分為公共和私有兩種,Docker公司運營的公共Registry叫作Docker Hub,私有的一般是公司內部的鏡像倉庫。

4) 容器

容器是基于鏡像啟動起來的,容器中可以運行一個或多個進程。可以認為,鏡像是Docker生命周期中的構建或者打包階段,而容器則是啟動或執行階段。

如果說鏡像類似于OVA文件,那么容器就類似于我們將OVA文件導入vmware workstation 中,然后點擊運行的狀態。

每個容器都包含一個鏡像,如果將容器看成一個集裝箱(下圖用貨車表示),那么鏡像就是里面的貨物。
Docker 入門

鏡像(貨物)可以被創建、啟動、關閉、重啟以及銷毀,就類似于裝貨、卸貨這種操作。docker并不關心容器里面到底是什么,是web服務?還是數據庫?不管是什么,docker都會以統一的標準進行“裝載”。

總結起來,Docker容器就是:

  1. 一個鏡像格式
  2. 一系列標準的操作
  3. 一個執行環境
    docker容器還非常易于移動,我們可以將進行傳到鏡像倉庫,然后在任意的地方和機器上運行。

三、Docker的技術組件

Docker可以運行在任何安裝了64bit Linux的主機上,docker開銷低,但主機上還應該支持以下功能:

3.1 一個原生的Linux容器格式

Docker稱為libcontainer。因為不論是什么鏡像,docker都會以同一種格式進行裝載。

3.2 Linux內核的命名空間(namespace)

因為一臺服務器上的所有容器都會共享一個內核,如果容器之間不是獨立的話可能會出現一些問題。比如兩個運行nginx的容器,都需要用到80端口,
這就會發生搶占,導致服務不可用。

命名空間可以為以下資源進行獨立分隔:
1.UTS:主機名和域名
2.IPC:信號量、消息隊列和共享內存
3.PID:進程編號
4.Network:網絡設備、網絡棧、端口等
5.Mount:掛載點
6.User:用戶和用戶組

3.3 資源隔離和分組(cgourps)
control group,cgroups可以將cpcu和內存之類的硬件資源獨立分配給每個docker容器。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

保康县| 微山县| 梅河口市| 长沙市| 乳山市| 南平市| 巢湖市| 定兴县| 正宁县| 石棉县| 康马县| 隆林| 东莞市| 南召县| 酉阳| 龙江县| 龙井市| 固镇县| 中山市| 昌宁县| 通海县| 佛教| 库伦旗| 河南省| 婺源县| 罗田县| 博兴县| 庆安县| 叶城县| 松潘县| 南京市| 临夏市| 宾阳县| 望都县| 明水县| 南木林县| 曲麻莱县| 黑水县| 板桥市| 达拉特旗| 安福县|