贏得 Docker 挑戰最佳實踐

2021-09-23 07:19:01 字數 2269 閱讀 6243

難怪docker正在迅速發展。docker,乙個開源專案。僅僅兩年,docker價值近10億美元,最近獲得了9500萬美元的資金。令人激動的是,我們看到有這麼多開發者對這個專案的熱情。然而,我將在下面討論企業使用docker本身是不夠的。

現代it問題

許多企業it團隊解決這兩個問題:首先,開發者和運維者在優先順序上並不能總是達成一致。企業必須應對的挑戰將來自開發人員的**和運維團隊的**切換。這兩個團隊之間的關係很難和諧相處。

第二,將**從乙個地方遷移到另乙個可以是很困難的。因為你沒有簡單的方法打包應用程式**,包括你的系統依賴性。你在不同的作業系統,不同的虛擬機器或不同的iaas上處理**。

docker的好處

docker最激動人心之處就是可以解決企業的這兩個問題。第乙個問題似乎是確定的,因為開發人員和運維人員之間有著清楚的界限。開發人員考慮docker容器內部發生的一切,運維人員思考容器外面發生了什麼。docker讓這一切變得更加簡單和方便,這是乙個非常可攜式的解決方案。

至於第二個問題,docker通過使你在單個應用程式程序打包一切與你相關的應用程式。但這只是部分解決了這些問題。

docker缺少什麼

docker可以形象化的比喻為像可疊起堆放的樂高積木。每個容器是乙個樂高。樂高玩具的美麗之處是可以組裝的磚塊和建立各種各樣的奇妙的東西。同樣的概念也適用於docker的容器中。利用docker,諸如編排、監控、日誌記錄和擴充套件可能成為企業關注的問題。docker容器可以為企業執行幾個容器,但如果你執行成百上千的呢?這些都是需要考慮的一些問題,它們超出了docker容器本身可以提供的範圍,為什麼paas平台是對docker的補充。

讓我們看看容器本身三個特定的缺陷:

1. 裝載容器

應用程式開發人員如何讓一款應用進入容器?對於開發者來說構建docker image也有一些負擔,誰需要關注**,不依賴於不同的系統的作業系統。這個問題的解決方案被稱為buildpacks——對於paas是最好和最便攜的選擇。大多數paas生態系統正在讓其標準化。buildpacks允許你建立你的棧,包括在容器內部的所有系統依賴關係,以及配置應用程式的環境。開發人員只需要考慮他們的應用程式**。他們不需要擔心什麼。buildpacks配置你的應用程式。

2. 編排運輸過程

假設開發人員建立大量的docker的容器。然後他們與運維團隊通訊:「ship these. deploy these to production」。it運維人員如何傳輸這些容器並且以系統的方法來管理這些容器效能、安全性和遵從性?容器有很多樂高積木。他們如何管理?

這個問題的答案是docker schedulers。如今在市場上有大量的排程器,它們為你編排和執行的容器並且跨集群分發它們——而不用考慮你的雲計算集群是什麼。排程器是有彈性的,所以如果乙個容器或機器或應用程式宕機,它會重新分配這些容器。從使用者的角度來看,根本感覺沒有停機時間。雖然這些排程器解決一部分運輸問題是有幫助的,但是還有另乙個重要的問題,企業仍然面臨乙個排程器不能解決的問題。

3. 開發自助服務

企業文化當中對於自助服務似乎有著天然的缺陷。開發人員和it運維之間也存在的天然的鴻溝。在某些方面,你可以說他們之間存在著一堵牆。經常發生的是,開發人員將構建乙個應用程式,然後把它扔在牆那邊給運維人員,並且希望應用能夠一切執行正常。因此,將應用程式部署到生產需要數週或數月。所以聽到開發者抱怨他們需要多長多長時間在生產環境中部署應用就不難理解了。

這種文化上的差異遭遇到破舊的基礎設施時,後果就會更嚴重,因為一些企業仍使用過時的票務系統獲取虛擬機器,計算週期可能需要數週時間。

開發人員可以解決這個分歧,但他們需要特殊的工具。他們需要一種自助的方式為企業工作。給開發人員自由的部署在他們的應用,但是這些工具也必須滿足安全性和遵企業的需求,包括多租戶管理。開發人員可以專注於他或她的應用程式,但是企業需要考慮所有由不同的開發人員提交的應用程式。怎麼處理這個?如何打破這堵存在與開發者和運維者之間的牆?

paas平台也有閃光的地方,它提供了乙個介於你的應用程式和基礎設施之間的平台。這個平台是一樣的,從開發到生產,提供乙個無縫應用交付體驗。

乙個新的開發方法

docker的承諾是真正偉大的,幫助開發人員解決構建新應用時的重大問題。它將改變應用程式開發過程,但某些挑戰必須克服從而使得企業獲得最大好處。paas平台將促進docker的發展,並且幫助其履行自己的承諾。

Docker最佳實踐

本文講的是docker最佳實踐,編者的話 本文是docker使用過程中的一些最佳實踐。雖然很多都是老話重談,但是很多人在使用過程中還是沒有遵守,比如每個程序只使用乙個容器這個最佳實踐,有很多人都來問,如果不這樣行不行,當然行,但是如果你想長久的用docker,那還是請遵守最佳實踐吧。精益 簡單,易於...

Docker 最佳實踐

編者的話 本文是docker使用過程中的一些最佳實踐。雖然很多都是老話重談,但是很多人在使用過程中還是沒有遵守,比如每個程序只使用乙個容器這個最佳實踐,有很多人都來問,如果不這樣行不行,當然行,但是如果你想長久的用docker,那還是請遵守最佳實踐吧。精益 簡單,易於管理,這是docker的精髓。最...

基於docker開發的最佳實踐

翻譯自docker官方文件,原文 下面的開發模式已被證明是對基於docker開發應用的人們有幫助的。如果你發現了其他我們應該加入的東西,請告訴我們。小的映象能更快地通過網路拉取而且在啟動容器或服務時能更快地載入到記憶體。下面是一些保持映象小巧的經驗法則 rules of thumb run apt ...