原創(chuàng)|使用教程|編輯:鄭恭琳|2020-06-15 11:55:07.280|閱讀 662 次
概述:
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
	 
 
如何使用創(chuàng)建容器映像
這篇文章的第1部分討論了使用容器部署嵌入式開發(fā)工具鏈的好處。它展示了如何配置以使其與在容器中部署的編譯工具鏈和測試執(zhí)行環(huán)境一起使用。
現(xiàn)在,讓我們看一下使用創(chuàng)建容器圖像。我將演示一個(gè)包含容器內(nèi)靜態(tài)分析執(zhí)行的簡單示例。
	
 
	
作為基于命令行的工具,標(biāo)準(zhǔn)適用于容器內(nèi)部署。它可以與編譯器打包在一起,并將系統(tǒng)構(gòu)建到一個(gè)容器映像中,并用于CI/CD,并部署到開發(fā)人員的桌面以進(jìn)行本地命令行掃描。下圖顯示了此設(shè)置的高級(jí)概述:
	 
 
	
該圖顯示Jenkins使用容器化的運(yùn)行靜態(tài)分析。在此特定設(shè)置中,,編譯工具鏈和構(gòu)建工具部署在該圖右上角所示的容器中。
右下方它下方的容器提供了執(zhí)行環(huán)境,執(zhí)行運(yùn)行時(shí)測試(例如單元測試或自動(dòng)系統(tǒng)級(jí)測試)可能需要執(zhí)行環(huán)境。
如果我們打算僅執(zhí)行靜態(tài)分析,則我們的設(shè)置很可能僅包含帶有編譯工具鏈和的一種容器。
	
 
	
如果尚未安裝,請安裝最新版的。
為了簡化使用創(chuàng)建容器映像的過程,最新版本附帶了一個(gè)Dockerfile示例。您可以在以下位置找到該Dockerfile:
/integration/docker/Dockerfile 
這個(gè)簡單的Dockerfile僅關(guān)注構(gòu)建映像所需的步驟。在大多數(shù)實(shí)際情況下,您需要將此文件與Dockerfile合并。
在分析示例Dockerfile中的內(nèi)容之前,讓我們看看它是如何工作的。我的示例假定以下簡單文件結(jié)構(gòu):
$HOME/sandbox/parasoft_cpptest_standard-2020.1.0-linux.x86_64.tar.gz
1.解壓縮發(fā)行版。
2.從發(fā)行版中復(fù)制示例Dockerfile
3.使用有關(guān)許可證的信息為準(zhǔn)備屬性文件。我們將使用默認(rèn)的cpptestcli.properties文件作為基礎(chǔ),因此我們將其復(fù)制到我們的工作目錄中:
編輯它以插入有關(guān)您的許可證服務(wù)器位置的信息。使用您喜歡的編輯器來配置許可信息。完成后保存文件。
4.編輯Dockerfile,并取消注釋行號(hào)13(將cpptestcli.properties文件從本地目錄復(fù)制到容器中位置的行)。Dockerfile中的行應(yīng)如下所示:
5.現(xiàn)在,我們準(zhǔn)備創(chuàng)建Docker映像。運(yùn)行命令以使用構(gòu)建第一個(gè)映像。圖像名稱為“cpptest_ci_image”。
Docker將花費(fèi)一些時(shí)間來分析其緩存并下載所需的基本映像。完成此操作后,將復(fù)制發(fā)行版并將其安裝到映像中。一兩分鐘后,圖像應(yīng)準(zhǔn)備就緒。 通過執(zhí)行命令以列出所有圖像來確認(rèn)它:
在輸出中,您應(yīng)該看到頂部列出了“cpptest_ci_image”。太好了,因此我們已經(jīng)建立了圖像并準(zhǔn)備就緒。現(xiàn)在該進(jìn)行測試了!
	
	
為了進(jìn)行簡單測試,請使用Dockerfile中提供的幫助程序/示例命令行之一。
使用您喜歡的編輯器打開Dockerfile,然后向下滾動(dòng)到文件底部。您應(yīng)該看到幾個(gè)示例命令行,如下所示:
	 
 
讓我們使用第26行中的命令行在該發(fā)行版隨附的示例之一上執(zhí)行容器內(nèi)靜態(tài)分析。
由于我們決定使用許可信息將cpptestcli.properties文件構(gòu)建到容器中,因此我們可以簡化命令行并刪除-settings選項(xiàng)。測試的命令行應(yīng)如下所示:
瞧!靜態(tài)分析是在容器中執(zhí)行的。結(jié)果在控制臺(tái)上報(bào)告。
我們可以進(jìn)一步配置該工具以在本地文件系統(tǒng)上生成HTML報(bào)告,但這是另一回事。我們的主要目標(biāo)是創(chuàng)建內(nèi)部帶有的容器,并將其配置為執(zhí)行靜態(tài)分析。我們實(shí)現(xiàn)了目標(biāo)。
	
 
	
如果您需要在流程中設(shè)置帶有靜態(tài)分析的CI服務(wù)器,則您的任務(wù)會(huì)簡單得多。只需訪問容器。如果您團(tuán)隊(duì)中的開發(fā)人員想要運(yùn)行靜態(tài)分析,則情況也是如此。
是否需要升級(jí)到最新版本?只需下載發(fā)行版,重建您的容器映像,即可完成!團(tuán)隊(duì)和自動(dòng)化基礎(chǔ)設(shè)施甚至都不會(huì)注意到此操作。如有必要,可平滑,輕松且可逆。
	
 
	
	在結(jié)束之前,讓我們看一下用于創(chuàng)建映像的附帶的Dockerfile的內(nèi)容。下圖顯示了
	 
 
詳細(xì)信息如下:
這就是使用創(chuàng)建一個(gè)簡單容器即可執(zhí)行靜態(tài)分析所需的一切。
正如我提到的,這是一個(gè)簡單的Dockerfile。它已添加到分發(fā)中,以為您提供一個(gè)示例,說明您可能需要為環(huán)境創(chuàng)建容器映像。您將需要對其進(jìn)行調(diào)整,或者將其與現(xiàn)有的Dockerfile合并。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@ke049m.cn