Docker容器

Docker容器

Docker 容器是一個開源的套用容器引擎,讓開發者可以打包他們的套用以及依賴包到一個可移植的容器中,然後發布到任何流行的Linux機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何接口(類似 iPhone 的 app)。幾乎沒有性能開銷,可以很容易地在機器和數據中心中運行。最重要的是,他們不依賴於任何語言、框架包括系統。

定義

Docker 容器是一個開源的套用容器引擎,讓開發者可以打包他們的套用以及依賴包到一個可移植的容器中,然後發布到任何流行的Linux機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何接口(類似 iPhone 的 app)。幾乎沒有性能開銷,可以很容易地在機器和數據中心中運行。最重要的是,他們不依賴於任何語言、框架包括系統。

安全性設定

定期滲透測試,安全審計;

儘量採用image的正規鏡像來源,相對於傳統安全,容器安全受質疑很大程度上是在於鏡像的維護及升級,因此在鏡像源頭保證安全和及時更新;

及時升級容器服務,比如採用rollingupdate的方式對跑服務的容器進行升級等方式。

1.

定期滲透測試,安全審計;

2.

儘量採用image的正規鏡像來源,相對於傳統安全,容器安全受質疑很大程度上是在於鏡像的維護及升級,因此在鏡像源頭保證安全和及時更新;

3.

及時升級容器服務,比如採用rollingupdate的方式對跑服務的容器進行升級等方式。

遷移步驟

步驟1:分解

一般來說,應用程式都是複雜的,它們都有很多的組件。例如,大多數應用程式都需要資料庫或中間件服務的支持以實現對數據的存儲、檢索和集成。所以,需要通過設計和部署把這些服務拆分成為它們自己的容器。如果一個應用程式能夠被拆分成為越多的分散式組件,那么應用程式擴展的選擇則越多。但是,分散式組件越多也意味著管理的複雜性越高。

步驟2:選擇一個基礎映像

當執行應用程式遷移時,應儘量避免推倒重來的做法。搜尋Docker註冊庫找到一個基本的Docker映像並將其作為應用程式的基礎來使用。
隨著時間的推移,企業將會發現這些Docker註冊庫中基本映像的價值所在。

步驟3:解決安全性和管理問題

安全性和管理應當是一個高優先權的考慮因素;企業用戶不應再把它們當作應用程式遷移至容器的最後一步。反之,企業必須從一開始就做好安全性和管理的規劃,把它們的功能納入應用程式的開發過程中,並在應用程式運行過程中積極主動地關注這些方面。這就是企業應當花大功夫的地方。

步驟4:增加代碼

為了創建映像,企業用戶需要使用一個Dockerfile來定義映像開發的必要步驟。一旦創建了映像,企業用戶就應將其添加至Docer Hub。

步驟5:配置、測試、部署

應對在容器中運行的應用程式進行配置,以便於讓應用程式知道可以在哪裡連線外部資源或者應用程式集群中的其他容器。企業用戶可以把這些配置部署在容器中或使用環境變數。

最後,把容器部署到實際生產環境中。為了積極主動地關注基於容器的應用程式的運行狀況,可考慮實施必要的監控和管理機制 。確保打開日誌記錄功能。

特性

Docker容器與其他的容器技術都是大致類似的。但是,Docker在一個單一的容器內捆綁了關鍵的應用程式組件,這也就讓這容器可以在不同平台和雲計算之間實現便攜性。其結果就是,Docker就成為了需要實現跨多個不同環境運行的應用程式的理想容器技術選擇。

Docker還可以讓使用微服務的應用程式得益,所謂微服務就是把應用程式分解成為專門開發的更小服務。 這些服務使用通用的RESTAPI來進行互動。使用完全封裝Docker容器的開發人員可以針對採用微服務的應用程式開發出一個更為高效的分發模式。

相關詞條

相關搜尋

熱門詞條

聯絡我們