容器技術主要帶來了以下幾點好處:
持續部署與測試:容器消除了線上線下的環境差異,保證了應用生命周期的環境一致性和標準化。開發人員使用鏡像實現標準開發環境的構建,開發完成后通過封裝著完整環境和應用的鏡像進行遷移,由此,測試和運維人員可以直接部署軟件鏡像來進行測試和發布,大大簡化了持續集成、測試和發布的過程。
跨云平臺支持:容器帶來的最大好處之一就是其適配性,越來越多的云平臺都支持容器,用戶再也無需擔心受到云平臺的捆綁,同時也讓應用多平臺混合部署成為可能。目前支持容器的IaaS云平臺包括但不限于亞馬遜云平臺(AWS)、Google云平臺(GCP)、微軟云平臺(Azure)、OpenStack等,還包括如Chef、Puppet、Ansible等配置管理工具。
環境標準化和版本控制:基于容器提供的環境一致性和標準化,可以使用Git等工具對容器鏡像進行版本控制,相比基于代碼的版本控制來說,你還能夠對整個應用運行環境實現版本控制,一旦出現故障可以快速回滾。相比以前的虛擬機鏡像,容器壓縮和備份速度更快,鏡像啟動也像啟動一個普通進程一樣快速。
高資源利用率與隔離:容器沒有管理程序的額外開銷,與底層共享操作系統,性能更加優良,系統負載更低,在同等條件下可以運行更多的應用實例,可以更充分地利用系統資源。同時,容器擁有不錯的資源隔離與限制能力,可以精確地對應用分配CPU、內存等資源,保證了應用間不會相互影響。
容器跨平臺性與鏡像:Linux容器雖然早在Linux 2.6版本內核已經存在,但是缺少容器的跨平臺性,難以推廣。容器在原有Linux容器的基礎上進行大膽革新,為容器設定了一整套標準化的配置方法,將應用及其依賴的運行環境打包成鏡像,真正實現了“構建一次,到處運行”的理念,大大提高了容器的跨平臺性。
易于理解且易用:Docker的英文原意是處理集裝箱的碼頭工人,標志是鯨魚運送一大堆集裝箱,集裝箱就是容器,生動好記,易于理解。一個開發者可以在15分鐘之內入門Docker并進行安裝和部署,這是容器使用史上的一次飛躍。因為它的易用性,有更多的人開始關注容器技術,加速了容器標準化的步伐。
應用鏡像倉庫:Docker官方構建了一個鏡像倉庫,組織和管理形式類似于GitHub,其上已累積了成千上萬的鏡像。因為Docker的跨平臺適配性,相當于為用戶提供了一個非常有用的應用商店,所有人都可以自由地下載微服務組件,這為開發者提供了巨大便利。
回答所涉及的環境:聯想天逸510S、Windows 10。
容器技術主要帶來了以下幾點好處:
持續部署與測試:容器消除了線上線下的環境差異,保證了應用生命周期的環境一致性和標準化。開發人員使用鏡像實現標準開發環境的構建,開發完成后通過封裝著完整環境和應用的鏡像進行遷移,由此,測試和運維人員可以直接部署軟件鏡像來進行測試和發布,大大簡化了持續集成、測試和發布的過程。
跨云平臺支持:容器帶來的最大好處之一就是其適配性,越來越多的云平臺都支持容器,用戶再也無需擔心受到云平臺的捆綁,同時也讓應用多平臺混合部署成為可能。目前支持容器的IaaS云平臺包括但不限于亞馬遜云平臺(AWS)、Google云平臺(GCP)、微軟云平臺(Azure)、OpenStack等,還包括如Chef、Puppet、Ansible等配置管理工具。
環境標準化和版本控制:基于容器提供的環境一致性和標準化,可以使用Git等工具對容器鏡像進行版本控制,相比基于代碼的版本控制來說,你還能夠對整個應用運行環境實現版本控制,一旦出現故障可以快速回滾。相比以前的虛擬機鏡像,容器壓縮和備份速度更快,鏡像啟動也像啟動一個普通進程一樣快速。
高資源利用率與隔離:容器沒有管理程序的額外開銷,與底層共享操作系統,性能更加優良,系統負載更低,在同等條件下可以運行更多的應用實例,可以更充分地利用系統資源。同時,容器擁有不錯的資源隔離與限制能力,可以精確地對應用分配CPU、內存等資源,保證了應用間不會相互影響。
容器跨平臺性與鏡像:Linux容器雖然早在Linux 2.6版本內核已經存在,但是缺少容器的跨平臺性,難以推廣。容器在原有Linux容器的基礎上進行大膽革新,為容器設定了一整套標準化的配置方法,將應用及其依賴的運行環境打包成鏡像,真正實現了“構建一次,到處運行”的理念,大大提高了容器的跨平臺性。
易于理解且易用:Docker的英文原意是處理集裝箱的碼頭工人,標志是鯨魚運送一大堆集裝箱,集裝箱就是容器,生動好記,易于理解。一個開發者可以在15分鐘之內入門Docker并進行安裝和部署,這是容器使用史上的一次飛躍。因為它的易用性,有更多的人開始關注容器技術,加速了容器標準化的步伐。
應用鏡像倉庫:Docker官方構建了一個鏡像倉庫,組織和管理形式類似于GitHub,其上已累積了成千上萬的鏡像。因為Docker的跨平臺適配性,相當于為用戶提供了一個非常有用的應用商店,所有人都可以自由地下載微服務組件,這為開發者提供了巨大便利。
回答所涉及的環境:聯想天逸510S、Windows 10。