自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Docker:容器技術(shù)與Docker介紹

云計(jì)算 云原生
本文主要介紹了什么是容器和什么是 Docker,相信你對(duì)容器技術(shù)和 Docker 已經(jīng)有了基本的了解。

今天我們開(kāi)始進(jìn)入 Docker 系列專題,在本專題中,我將基于 .NET 項(xiàng)目介紹和講解 Dcoker 的基本使用、基礎(chǔ)命令、Dockfile,以及 Docker 的存儲(chǔ)和網(wǎng)絡(luò)等內(nèi)容。

1. 為什么"還"要學(xué) Docker

在過(guò)去幾年時(shí)間里,容器(Container)技術(shù)得到了快速的發(fā)展和普及。在這樣的大背景下,我們作為開(kāi)發(fā)人員,容器技術(shù)可以說(shuō)是我們必備的基礎(chǔ)技能之一。而 Docker 是容器技術(shù)中目前普及率最高的一個(gè)實(shí)現(xiàn)。

雖然現(xiàn)在 DevOps 領(lǐng)域最火的 Kubernetes(K8s) 已經(jīng)棄用了 Dockershim(這是一個(gè)適配器組件,使得你可以把 Docker 用作 K8s 的容器運(yùn)行時(shí)),但這并不代表 K8s 就不能運(yùn)行 Docker 容器了。Dockershim 一定還會(huì)繼續(xù)由社區(qū)或官方維護(hù),或者 Docker 將來(lái)可能會(huì)支持 CRI 規(guī)范以使它可以不用借助適配器組件便可以運(yùn)行在 K8s 中,所以目前來(lái)看大家完全不必?fù)?dān)心。

Docker 目前在市場(chǎng)上的及率依然非常高,在實(shí)際環(huán)境中還是有很多更適合直接使用 Docker 的場(chǎng)景。

另外,我個(gè)人感覺(jué),學(xué)習(xí)了 Docker 再去學(xué) K8s 會(huì)輕松很多,很多概念不會(huì)那么抽象。

2. 什么是容器

顧名思義,容器(Container)是 IT 世界標(biāo)準(zhǔn)化的“集裝箱”。就像運(yùn)輸業(yè)使用實(shí)體集裝箱隔離不同的貨物,以便通過(guò)船只和火車運(yùn)輸,軟件開(kāi)發(fā)技術(shù)也已使用這種容器化的方法。

最早的容器技術(shù)應(yīng)該是一個(gè)叫 Linux Container 的工具,簡(jiǎn)稱 LXC,它是一種內(nèi)核輕量級(jí)的操作系統(tǒng)層的虛擬化技術(shù)。Linux Container 的實(shí)現(xiàn)主要包含 Namespace 和 Cgroup 兩大基礎(chǔ)技術(shù),前者是命名空間,主要用于資源的隔離,后者負(fù)責(zé)資源管理和控制,比如 CPU 和內(nèi)存的限制、進(jìn)程組的掛起、恢復(fù)和優(yōu)先級(jí)控制等。

隨著虛擬化技術(shù)的發(fā)展,在 LXC 系統(tǒng)層容器技術(shù)的基礎(chǔ)上,又誕生了應(yīng)用層容器技術(shù),比如 Docker。它是運(yùn)行在操作系統(tǒng)之上的一個(gè)應(yīng)用程序,在這個(gè)應(yīng)用程序中,可以將需要部署的應(yīng)用程序進(jìn)行容器化,讓各個(gè)應(yīng)用程序運(yùn)行在被隔離的容器中。

容器的主要優(yōu)勢(shì)特點(diǎn)是:標(biāo)準(zhǔn)化、輕量級(jí)、易移植、低成本。容器技術(shù)提供輕量級(jí)固定的基礎(chǔ)設(shè)施,無(wú)需配置硬件和花費(fèi)時(shí)間安裝操作系統(tǒng)和軟件來(lái)托管部署。它可將應(yīng)用程序的代碼與相關(guān)配置文件、庫(kù)及執(zhí)行應(yīng)用程序所需的一切以非常標(biāo)準(zhǔn)化的方式組合打包在一起,這可讓開(kāi)發(fā)人員或運(yùn)維人員順暢地跨環(huán)境部署應(yīng)用程序,從而解決應(yīng)用程序換個(gè)環(huán)境就無(wú)法正確執(zhí)行的問(wèn)題。容器之間彼此隔離,有助于提升應(yīng)用程序的安全性。

3. 什么是 Docker

前文說(shuō)了,Docker 是容器技術(shù)的一種實(shí)現(xiàn)。Docker 是一個(gè)用于開(kāi)發(fā)、交付和運(yùn)行容器的容器化平臺(tái)。桌面版 Docker 支持 Linux、Windows 和 macOS。對(duì)于服務(wù)器環(huán)境,Docker 支持 Linux 的多種分發(fā)版本和 Windows Server 2016 及更高版本,許多云服務(wù)商(如阿里云、Azure 等)都支持 Docker。

Docker 使用的是 C/S(客戶端/服務(wù)器)架構(gòu)。Docker 客戶端與 Docker 守護(hù)進(jìn)程(Daemon)對(duì)話,后者負(fù)責(zé)構(gòu)建、運(yùn)行和分發(fā) Docker 容器。Docker 客戶端和守護(hù)進(jìn)程可以運(yùn)行在同一個(gè)系統(tǒng)上,或者你可以將 Docker 客戶端連接到一個(gè)遠(yuǎn)程的 Docker 守護(hù)進(jìn)程,它們之間使用 REST API 通訊。另一個(gè) Docker 客戶端是 Docker Compose,它可以讓你處理由一組容器組成的應(yīng)用程序。

Docker 客戶端是一個(gè)名為 docker 的命令行應(yīng)用程序,它為我們提供了一個(gè)命令行接口 (CLI),用于與 Docker 服務(wù)器進(jìn)行交互。docker 命令使用 REST API 接口將諸如 docker run 之類的指令發(fā)送到本地或遠(yuǎn)程服務(wù)器來(lái)管理容器。一個(gè) Docker 客戶端可以多個(gè)守護(hù)進(jìn)程通信。

Docker 服務(wù)器中的守護(hù)程序(名為 dockerd)監(jiān)聽(tīng) Docker API 請(qǐng)求并管理 Docker 對(duì)象,如鏡像、容器、網(wǎng)絡(luò)、插件等。守護(hù)程序還可以與其他守護(hù)程序進(jìn)行通信,以管理 Docker 服務(wù)。

Docker 鏡像倉(cāng)庫(kù)是一個(gè)軟件即服務(wù)(SaaS)Docker 容器 Registry(注冊(cè)表)。Docker 鏡像倉(cāng)庫(kù)是用于存儲(chǔ)和分發(fā)創(chuàng)建的容器鏡像。Docker Hub 是 Docker 用于鏡像管理的默認(rèn)公共倉(cāng)庫(kù)。

4. 結(jié)語(yǔ)

本文主要介紹了什么是容器和什么是 Docker,相信你對(duì)容器技術(shù)和 Docker 已經(jīng)有了基本的了解。

責(zé)任編輯:武曉燕 來(lái)源: 精致碼農(nóng)
相關(guān)推薦

2024-12-06 08:00:00

2024-09-19 08:49:13

2022-10-27 07:09:58

容器通信

2023-12-14 15:51:15

2014-11-20 10:55:47

Docker容器技術(shù)虛擬化

2015-08-19 14:54:25

2022-08-04 07:25:22

Docker部署項(xiàng)目

2023-05-30 14:56:18

Docker開(kāi)發(fā)容器

2019-12-12 10:58:37

Docker容器引擎

2014-06-23 09:11:01

2015-05-27 09:13:15

DaoCloudDocker容器

2015-06-15 10:40:50

Docker應(yīng)用程序遷移

2021-12-25 23:25:04

LinuxDocker容器

2015-05-27 09:08:26

容器云平臺(tái)Daocloud

2014-04-24 10:14:32

紅帽

2022-01-24 17:08:33

Linux容器Docker

2024-07-26 09:47:28

2014-11-27 09:59:02

dockerlinux技巧

2023-08-28 16:10:00

容器化DockerKubernetes

2019-07-16 14:44:52

DockerMySQL操作系統(tǒng)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)