每個(gè)開發(fā)人員都必須嘗試的三個(gè)Docker桌面擴(kuò)展
譯文譯者 | 李睿
審校 | 孫淑娟
Docker擴(kuò)展可以通過提高速度和生產(chǎn)力為開發(fā)人員節(jié)省大量時(shí)間和精力。開發(fā)人員可以嘗試采用,并實(shí)現(xiàn)CI/CD管道的自動(dòng)化。
軟件開發(fā)領(lǐng)域如今正在以前所未有的速度變化,對(duì)更快發(fā)布周期的需求導(dǎo)致了虛擬化技術(shù)的激增。虛擬機(jī)(VM)已經(jīng)存在很多年,但是近年來出現(xiàn)的容器讓它們相形見絀,因?yàn)樘摂M機(jī)速度較慢,而且不像容器那么輕量。隨著微服務(wù)的普及,容器已經(jīng)成為在輕量級(jí)環(huán)境中開發(fā)、測試和部署應(yīng)用程序的虛擬機(jī)的一個(gè)很好替代品。
Docker是一種開源技術(shù),它使用Linux容器來虛擬化應(yīng)用程序和其他軟件進(jìn)程,這樣它們就可以在另一個(gè)容器中獨(dú)立且更安全地運(yùn)行,就好像它們是同一臺(tái)計(jì)算機(jī)設(shè)備上獨(dú)立運(yùn)行的應(yīng)用程序一樣。
Docker將軟件應(yīng)用程序打包在虛擬容器中,這樣它們就可以快速有效地運(yùn)輸、部署和運(yùn)行。這些容器就像應(yīng)用程序的虛擬儲(chǔ)物柜。它們將應(yīng)用程序及其依賴項(xiàng)打包,以便可以透明地在任何地方發(fā)布和運(yùn)行。這意味著用戶可以從開發(fā)、測試、登臺(tái)或生產(chǎn)系統(tǒng)中獲得相同的用戶體驗(yàn)。
1、Docker擴(kuò)展
Docker公司在DockerCon 2022大會(huì)上發(fā)布了Docker擴(kuò)展(Docker Extensions)。Docker擴(kuò)展的理念是通過使用第三方工具(如插件)來幫助開發(fā)人員擴(kuò)展其功能,可以通過單擊Docker桌面的擴(kuò)展選項(xiàng)卡啟用可用的擴(kuò)展。擴(kuò)展提高了開發(fā)人員的工作效率,并使工作流更加順暢。開發(fā)人員可以在一個(gè)集中的地方使用他們喜歡的工具,即Docker桌面。
在探索各種有趣的擴(kuò)展之前,先打開Docker桌面,從其首選項(xiàng)中啟用Docker擴(kuò)展。
以下是一些開發(fā)人員必須擁有的Docker擴(kuò)展,以加快他們的軟件開發(fā)。
2、DroneCI
眾所周知,持續(xù)集成(CI)是進(jìn)行DevOps的第一步。當(dāng)開發(fā)人員編寫代碼時(shí),他們將代碼存儲(chǔ)在像Git這樣的源代碼控制管理工具中。然后在持續(xù)集成工具的幫助下測試和構(gòu)建代碼。持續(xù)集成(CI)是每一種DevOps方法的重要組成部分。DroneCI是一個(gè)非常容易設(shè)置和使用的開源持續(xù)集成(CI)工具?,F(xiàn)在有了這個(gè)擴(kuò)展,用戶將能夠在筆記本電腦進(jìn)行持續(xù)集成(CI)。只需要一個(gè)yml文件來定義步驟,然后就完成了。
可以采用一個(gè)簡單的Node.js應(yīng)用程序來處理插件。以下是克隆的示例應(yīng)用程序。
可以直接從Docker桌面擴(kuò)展選項(xiàng)卡安裝DroneCI擴(kuò)展。
在安裝之后,單擊Drone CI擴(kuò)展,將看到以下儀表板:
由于現(xiàn)在還沒有配置任何管道,應(yīng)該看到一個(gè)空白的儀表板,沒有導(dǎo)入任何管道。
點(diǎn)擊“Import Pipeline”導(dǎo)入項(xiàng)目。擴(kuò)展將顯示所有的項(xiàng)目,.drone.yml在里面。因此,從本地導(dǎo)入一個(gè)項(xiàng)目進(jìn)行嘗試。
為了向你展示一個(gè)示例,導(dǎo)入了Simple-Node-App 項(xiàng)目,這是一個(gè)簡單的Node.js應(yīng)用程序,包括簡單的測試。
下一步是運(yùn)行管道,為此需要添加一些簡單的設(shè)置,將在點(diǎn)擊“運(yùn)行/播放”按鈕時(shí)執(zhí)行這些設(shè)置;將會(huì)看到下面的動(dòng)作:
添加所需的字段,例如要運(yùn)行的步驟、秘密文件(如果有的話,可以在secret.txt文件中指定)、環(huán)境文件等等。
一旦運(yùn)行了應(yīng)用程序,就會(huì)看到管道正在被執(zhí)行。
3、vcluster
與Kubernetes一起工作可能會(huì)令人不知所措。由于這涉及到一個(gè)巨大的學(xué)習(xí)曲線,開發(fā)人員需要花費(fèi)更多的時(shí)間和精力來理解這個(gè)平臺(tái)。雖然這一切都是值得的,但是如果有工具可以幫助開發(fā)人員并幫助他們提高生產(chǎn)力呢?
vclusters就是這樣一個(gè)工具,可以使用它在任何Kubernetes集群上創(chuàng)建虛擬集群。與創(chuàng)建可能會(huì)增加云賬單的成熟集群不同,vcluster價(jià)格低廉,并具有多租戶的額外優(yōu)勢。這將使需要設(shè)置不同開發(fā)和測試配置的任何人受益。
確保從Docker桌面首選項(xiàng)啟用Kubernetes。
vcluster擴(kuò)展在Docker桌面擴(kuò)展選項(xiàng)卡上很容易找到,點(diǎn)擊就可以安裝。
在安裝Docker擴(kuò)展之后,將看到一個(gè)創(chuàng)建虛擬集群的簡單指示板。
然后,可以點(diǎn)擊“創(chuàng)建新集群”為集群命名,填寫必填字段,然后單擊“創(chuàng)建”。
填寫完所有必填字段之后,應(yīng)該能夠看到集群正在被創(chuàng)建。在一段時(shí)間之后,應(yīng)該會(huì)看到它在運(yùn)行。
可以使用vcluster CLI驗(yàn)證正在運(yùn)行的集群。以下是列出vcluster的命令:
4、Microcks
Microcks是一個(gè)模擬和測試API和微服務(wù)的開源平臺(tái),可以部署模擬并在本地試驗(yàn)其他API。現(xiàn)在Docker擴(kuò)展已經(jīng)可用,可以有效地模擬和測試基于事件的API。Microks擴(kuò)展在Docker桌面上隨時(shí)可用,只需單擊即可輕松安裝。
點(diǎn)擊“Launch Microcks” 選項(xiàng)卡:
Microcks開始運(yùn)行,可以訪問localhost:8080來測試API。
轉(zhuǎn)到localhost:8080,應(yīng)該會(huì)看到Microcks儀表板。
點(diǎn)擊“APi”和“Services” 選項(xiàng)卡。
選擇“REST API”并單擊“下一步”。
命名API、版本和資源,然后單擊“下一步”。
為這個(gè)實(shí)驗(yàn)添加如下所示的虛擬JSON Reference Payload,然后單擊“下一步”。
最后一步是查看,一旦添加的數(shù)據(jù)是正確的,單擊“下一步”。
應(yīng)該看到剛剛創(chuàng)建的API列表。
單擊它可以查看列出的帶有端點(diǎn)的CRUD操作。用Get進(jìn)行測試。
復(fù)制鏈接并在本地瀏覽器上打開端點(diǎn),應(yīng)該會(huì)看到如下內(nèi)容:
5、結(jié)論
Docker是任何軟件開發(fā)人員都必須了解的平臺(tái)。多年來,Docker已經(jīng)建立了一個(gè)龐大的社區(qū)和支持群體。這是Docker幫助開發(fā)人員簡化軟件開發(fā)和部署工作的一項(xiàng)出色舉措。令人興奮的是,用戶可以構(gòu)建自己的定制擴(kuò)展。如果使用得當(dāng),上面列出的擴(kuò)展可能會(huì)顯著影響開發(fā)人員的軟件交付管道。開發(fā)人員可以進(jìn)行嘗試,以提高速度和生產(chǎn)力。
原文鏈接:https://dzone.com/articles/docker-desktop-extensions-every-developer-must-try