大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

Docker教程
Docker安裝
Docker使用
Docker實例

Docker Stack是什么

大規(guī)模場景下的多服務(wù)部署和管理是一件很難的事情。

幸運(yùn)的是,Docker Stack 為解決該問題而生,Docker Stack 通過提供期望狀態(tài)、滾動升級、簡單易用、擴(kuò)縮容、健康檢查等特性簡化了應(yīng)用的管理,這些功能都封裝在一個完美的聲明式模型當(dāng)中。

在筆記本上測試和部署簡單應(yīng)用很容易。但這只能算業(yè)余選手。在真實的生產(chǎn)環(huán)境進(jìn)行多服務(wù)的應(yīng)用部署和管理,這才是專業(yè)選手的水平。

幸運(yùn)的是,Stack 正為此而生!Stack 能夠在單個聲明文件中定義復(fù)雜的多服務(wù)應(yīng)用。Stack 還提供了簡單的方式來部署應(yīng)用并管理其完整的生命周期:初始化部署 -> 健康檢查 -> 擴(kuò)容 -> 更新 -> 回滾,以及其他功能!

步驟很簡單。在 Compose 文件中定義應(yīng)用,然后通過 docker stack deploy 命令完成部署和管理。

Compose 文件中包含了構(gòu)成應(yīng)用所需的完整服務(wù)棧。此外還包括了卷、網(wǎng)絡(luò)、安全以及應(yīng)用所需的其他基礎(chǔ)架構(gòu)。然后基于該文件使用 docker stack deploy 命令來部署應(yīng)用。warm 之上來完成應(yīng)用的部署。因此諸如安全等高級特性,其實都是來自 Swarm。

簡而言之,Docker 適用于開發(fā)和測試。Docker Stack 則適用于大規(guī)模場景和生產(chǎn)環(huán)境。

如果了解 Docker Compose,就會發(fā)現(xiàn) Docker Stack 非常簡單。事實上在許多方面,Stack 一直是期望的 Compose——完全集成到 Docker 中,并能夠管理應(yīng)用的整個生命周期。

從體系結(jié)構(gòu)上來講,Stack 位于 Docker 應(yīng)用層級的最頂端。Stack 基于服務(wù)進(jìn)行構(gòu)建,而服務(wù)又基于容器,如下圖所示。

在后續(xù)的講解中會一直使用示例應(yīng)用 AtSea Shop。該示例托管在 Github 的 dockersamples/atsea-sample-shop-app 庫中,基于 Apache 2.0 許可證開源。

使用該應(yīng)用是因為其復(fù)雜度適中,不會因為太復(fù)雜而難以完整解釋。除此之外,該應(yīng)用還是個多服務(wù)應(yīng)用,并且利用了認(rèn)證和安全相關(guān)的技術(shù)。應(yīng)用架構(gòu)如下圖所示。

如上圖所示,該應(yīng)用由 5 個服務(wù)、3 個網(wǎng)絡(luò)、4 個密鑰以及 3 組端口映射構(gòu)成。具體細(xì)節(jié)將會結(jié)合 Stack 文件進(jìn)行分析。

提示:服務(wù)一詞時,指的是 Docker 服務(wù)(由若干容器組成的集合,作為一個整體進(jìn)行統(tǒng)一管理,并且在 Docker API 中存在對應(yīng)的服務(wù)對象)。

復(fù)制 Github 倉庫,以獲取全部源代碼文件。

$ git clone https://github.com/dockersamples/atsea-sample-shop-app.git Cloning
into 'atsea-sample-shop-app'...
remote: Counting objects: 636, done.
remote: Total 636 (delta 0), reused 0 (delta 0), pack-reused 636
Receiving objects: 100% (636/636), 7.23 MiB | 28.25 MiB/s, done.
Resolving deltas: 100% (197/197), done.

該應(yīng)用的代碼由若干目錄和源碼文件組成。讀者可以隨意瀏覽這些文件。但是接下來,重點關(guān)注的文件是 docker-stack.yml。該文件通常被稱為 Stack 文件,在該文件中定義了應(yīng)用及其依賴。

在該文件整體結(jié)構(gòu)中,定義了 4 種頂級關(guān)鍵字。

? version:代表了Compose文件格式的版本號。為了應(yīng)用于Stack,需要3.0或者更高的版本。

? services:中定義了組成當(dāng)前應(yīng)用的服務(wù)都有哪些。

? networks:列出了必需的網(wǎng)絡(luò)。

? secrets:定義了應(yīng)用用到的密鑰。

如果展開頂級的關(guān)鍵字,可以看到類似上圖中的結(jié)構(gòu)。Stack 文件由 5 個服務(wù)構(gòu)成,分別為“reverse_proxy”“database”“appserver”“visualizer”“payment_gateway”。Stack 文件中包含 3 個網(wǎng)絡(luò),分別為“front-tier”“back-tier”“payment”。

最后,Stack 文件中有 4 個密鑰,分別為“postgres_password”“staging_token”“revprox_key”“revprox_cert”。

version: "3.2"
services:
reverse_proxy:
database:
appserver:
visualizer:
payment_gateway:
networks:
front-tier:
back-tier:
payment:
secrets:
postgres_password:
staging_token:
revprox_key:
revprox_cert:

Stack 文件定義了應(yīng)用的很多依賴要素,理解這一點很重要。因此,Stack 文件是應(yīng)用的一個自描述文件,并且作為一個很好的工具彌合了開發(fā)和運(yùn)維之間的隔閡。

全部教程
主站蜘蛛池模板: 午夜免费体验区 | 国产亚洲精品久久麻豆 | 狠狠激情五月综合婷婷俺 | 性生活国产 | 国产成人综合亚洲亚洲欧美 | 成人精品一区二区三区中文字幕 | 强制高潮18xxxxhd日韩 | 国产精品a v 免费视频 | 欧美一级毛片日韩一级 | 久久精彩 | 欧美高清免费精品国产自 | 欧美日本另类xxx乱大交 | 日本一级大黄毛片一级 | 玖玖国产 | 免费精品在线视频 | 99在线精品免费视频九九视 | 国产观看精品一区二区三区 | 99麻豆久久久国产精品免费 | 国产全黄a一级毛片 | 欧美一区二区三区国产精品 | 亚洲精品国自产拍影院 | 国产免费午夜a无码v视频 | 四虎中文 | 久久久久夜 | 成人sese| 欧美日本一道免费一区三区 | 免费一区二区三区免费视频 | 日韩国产成人精品视频 | 亚洲精品日韩在线一区 | 国产日韩在线看 | 伊人久久综合网站 | 中文视频在线 | 精品视频网站 | 四虎影院视频 | 中文字幕一区二区三区四区五区人 | 日本亚洲一区二区三区 | a久久久久一级毛片护士免费 | 欧美日韩中字 | 亚洲国产成人资源在线桃色 | 日韩欧美亚洲精品 | 99精品视频不卡在线观看免费 |