Docker開發者現在可以在自己的桌面上構建Arm容器
Docker與Arm今天公佈一項重要的全新合作伙伴計劃,兩家公司將共同為Docker的工具提供面向Arm平臺的更佳支援能力。
此次合作的主要思路,是幫助Docker開發人員輕鬆立足自己的x86桌面裝置為Arm平臺構建應用程式,而後將應用成果部署至雲端(包括基於Arm的AWS EC2 A1例項)、邊緣以及物聯網裝置。具體來講,開發者的Arm容器構建流程將與以往保持一致,無需任何交叉編譯步驟。
這一貼心而強大的新功能適用於通過JavaScript/Node.js、Python、Java、C++、Ruby、.Net core、Go、Rust以及PHP編寫而成的應用程式。下週,此項功能將在Docker公司於舊金山召開的年度北美開發者大會 上釋出技術預覽版。
從傳統意義上講,開發人員必須立足基於Arm的伺服器之上構建能夠執行在Arm平臺上的容器。作為全新合作關係的首個成果,Docker公司在這套新系統中相當於立足PC端模擬出一個可用於構建容器映象的Arm晶片。
Docker公司戰略聯盟執行副總裁David Messina在接受採訪時表示,“一夜之間,全球200萬Docker開發者得以利用自己熟知的Docker命令快速轉型為Arm開發人員。正如我們以往已經完成的一系列嘗試,Docker再次簡化流程、降低開發人員的理解門檻,並最終幫助大家得以通過自己的膝上型電腦實現由x86開發者到Arm開發者的蛻變。”
由於以亞馬遜A1例項為代表的雲端Arm伺服器通常在使用成本方面要遠低於x86裝置,這意味著使用者能夠利用這套新系統通過在Arm上執行容器來獲得可觀的直接性成本效益。
而對於Docker公司而言,這種合作關係也開闢了新的機遇,特別是在邊緣與物聯網場景等Arm晶片已經開始發揮巨大作用的領域。同樣的,Arm方面也希望通過降低平臺開發難度的方式強化自身開發人員生態系統。其中的道理非常簡單:為平臺構建應用程式的難度越低,開發人員就越有可能在採用Arm合作伙伴晶片的伺服器之上執行這類應用。
Arm公司基礎設施業務線市場營銷副總裁Mohamed Awad指出,“Arm對於基礎設施的定位思路,真正涵蓋了從商戰到邊緣、再到資料中心的所有方式,這是因為我們正是極少數能夠貫穿整個路徑的企業之一。正是這樣的觀點,促使我們努力確保以有意義的方式與Docker合作並建立起長期夥伴關係。我們意識到計算與基礎設施正在由原本的集中式計算、通用型架構模式,逐步轉化為更分散、異構程度更高的計算系統。”
不過Awad也正確地指出,開發人員不希望承擔這種複雜性,同時又需要確保自己編寫的應用程式能夠在各類平臺上順暢執行,並根據需求隨時加以移動。Awad表示,“對我們來說,此次合作的目標是為開發人員賦能,幫助他們擺脫任何特定領域帶來的鎖定性約束,同時保證他們能夠根據自己的實際工作需求選擇最為高效的計算平臺。”
Messina指出,Docker一直承諾消除應用程式對其執行所在的基礎設施的依賴性。新增對Arm平臺的支援當然代表著這一承諾的最新擴充套件成果。他同時強調稱,這方面工作主要是由Docker公司的各大企業客戶所推動。這些客戶已經在利用Docker工具構建起用於雲原生開發的系統——至少是在x86架構開發方面。現在,企業客戶又開始將目光投向邊緣裝置開發,而邊緣裝置普遍採用Arm計算架構。
Awad與Messina也都強調稱,開發人員無需學習任何新知識即可順利享受此次釋出成果帶來的便利。換言之,大家所熟悉的全部Docker命令都能夠在新系統中直接使用。