成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

現代“十二要素應用”與Docker

云計算
“十二要素應用”為開發SaaS應用提供了方法上的指導,而Docker能夠提供打包依賴,解耦后端服務等特性,使得兩者非常吻合。這篇文章介紹了Docker特性怎樣滿足了開發“十二要素應用”的對應要點。

“十二要素應用”為開發SaaS應用提供了方法上的指導,而Docker能夠提供打包依賴,解耦后端服務等特性,使得兩者非常吻合。這篇文章介紹了Docker特性怎樣滿足了開發“十二要素應用”的對應要點。

Docker非常適合開發“十二要素應用”。

“十二要素應用”為構建SaaS應用提供了方法論,是由知名PaaS云計算平臺Heroku的創始人Adam Wiggins提出的。請參考這篇文章。

Dockerfile與docker-compose.yml正在成為用代碼定義服務的標準,通過它們可以定義服務的所有內容:依賴、環境、端口、各種進程以及后端服務。

Docker鏡像和容器為操作系統提供了保證,使得開發環境和生產環境可以有效地保持一致。

這篇文章簡單地介紹了Docker是怎樣滿足“十二要素應用”的核心要點的。它解釋了用Docker開發一個典型的“Rails/Postgres/Redis/web/worker”所應用的技術。

后續文章將通過代碼深入介紹如何應用這些技術。

II. 依賴—顯示地聲明和隔離依賴關系

Docker鏡像基于顯示的Dockerfile構建,而Docker容器作為獨立的運行環境。

Dockerfile提供了顯示聲明基礎操作系統的方法(FROM), 而且通過運行命令來安裝附加的系統包以及應用的依賴包(RUN)。

通過這些方法,你可以聲明你需要ubuntu 14.04、Ruby 2.2.2、Node 0.11,然后一次性安裝。

III. 配置—在環境中儲存配置

Docker容器非常依賴Linux的環境變量進行配置。

docker-compose.yml有一個環境變量的哈希表,你可以通過它顯示的定義容器的環境變量。這些默認的或者未定義的值將在運行時從主機中繼承。

另外,還有Dokckerfile的ENV命令以及『docker run –env=[]』和『docker run –env-file=[]』運行選項可以設置環境變量。

通過這些方法,你可以聲明你的應用需要環境變量GITHUB_AUTH_TOKEN。

VII. 端口綁定—通過端口綁定來提供服務

Docker非常依賴端口綁定。

docker-compose.yml有一個端口陣列,可以通過它顯示的定義“主機:容器”的端口綁定。『docker run –p HOST:CONTAINER』讓你可以在運行時定義端口綁定。

通過這些方法,你可以聲明你的應用的網絡服務器將監聽端口5000,而且你可以通過主機的端口5000獲取服務。

IV. 后端服務—把后端服務當作附加資源

Docker容器與其它容器幾乎完全隔離,所以需要通過網絡與后端服務進行通信。

docker-compse.yml有一個鏈接哈希表,你可以通過它指定你的應用所需要依賴的其他容器服務。‘docker-compose up’命令將首先開啟這些后端服務,然后配置應用容器中網絡連接信息的環境變量。

通過這些方法,你可以聲明你的應用需要Postgres 9.4和Redis 3.0服務,讓你的應用通過主機名和端口號與他們建立連接。

VI. 進程—以一個或者多個無狀態進程運行應用

默認情況下,Docker容器是不帶儲存的進程。

docker-compose.yml定義了一系列服務,每一個服務都有自己的鏡像或者構建文件(Dockerfile)以及命令。

通過這些方法,你可以聲明你的應用同時有一個網絡進程和工作進程。

XII. 管理進程—后臺管理任務當做一次性進程運行

Docker鏡像可以很容易地運行一次性進程。

‘docker run myapp CMD’可以在與你的網絡進程一致的環境中運行任意命令。

通過這些方法,你可以基于你的Postgres數據庫運行交互式的bash或者運行一次性的’rake db:migrate’進程。

現有技術

若沒有Docker,OS X的開發工具鏈是這樣的:Homebrew作為系統依賴包, Postgres和Redis作為開發服務, Ruby的Bundler作為跨平臺開發依賴,一系列的Shell腳本和foreman讓所有工具在本地同時運行起來,以及一個獨立的基于Linux的構建服務負責將應用打包到生產環境。

這樣的工作流并沒有錯誤,但是Docker提供一個更簡潔的方式。

有了Dockerfile和docker-compose.yml文件,我們將不再需要任何OS X系統依賴,服務包或者跨平臺的語言依賴。一個簡單的“dicker-compose up”命令可以提供一個完整的Linux開發環境,并且能夠輕易地將“十二要素應用”移植到生產機器。

原文鏈接:http://dockone.io/article/411
 

責任編輯:Ophira 來源: dockerone
相關推薦

2015-06-30 10:32:55

云計算應用設計十二要素

2022-11-21 07:48:04

2023-05-15 07:33:06

云原生自身業務云廠商

2023-12-25 15:10:22

云計算數字化轉型云服務轉型

2024-11-07 09:08:58

2024-11-29 14:08:51

2023-10-26 11:23:42

2023-03-03 14:06:15

2013-11-27 09:47:57

應用現代化云遷移

2019-07-16 08:02:22

Docker自動化容器

2014-02-28 09:49:11

2013-02-21 11:09:55

2022-07-15 08:00:00

安全零信任數據泄露

2011-04-18 14:43:55

2020-03-24 07:22:04

物聯網現代辦公IOT

2015-10-29 14:35:21

移動設備現代化

2011-09-06 09:08:51

Chrome應用

2024-01-17 08:01:28

Docker語法命令

2009-07-17 17:32:09

BSM企業IT與業務摩卡

2020-05-11 14:20:40

VMware
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品成人一区 | 中文字幕一区二区三区乱码在线 | 在线播放一区二区三区 | 网站国产 | 精品久久久久久亚洲精品 | 成人精品视频在线观看 | 国产精品一区二区不卡 | 成人在线播放网址 | 操操日| 精品麻豆剧传媒av国产九九九 | 免费在线观看成人av | 久久精品亚洲国产奇米99 | 亚洲一区二区三区四区五区午夜 | 免费在线观看一区二区三区 | 久草中文在线 | 精品毛片 | 久久久一区二区三区 | 自拍视频在线观看 | 国产一区免费视频 | 成人福利视频 | 国产精品不卡视频 | 午夜在线小视频 | 天天夜碰日日摸日日澡 | 亚洲一区二区视频 | 91久久久久久久 | 成人av鲁丝片一区二区小说 | 欧美成人a | 亚洲一区二区三区在线播放 | 亚洲一区二区视频 | 国产成人在线一区二区 | 成人午夜影院 | 亚洲国产成人久久久 | 亚洲永久免费观看 | 欧美成人免费 | 日韩欧美国产一区二区 | 一级黄色生活视频 | 国内自拍真实伦在线观看 | www国产亚洲精品久久网站 | 国产一二区免费视频 | 91最新入口 | 日韩欧美一区二区三区免费观看 |