Linux云計(jì)算教程全套視頻合集
Alpine Linux是一個(gè)獨(dú)立的、非商業(yè)的、通用的Linux發(fā)行版,設(shè)計(jì)用于了解安全性、簡(jiǎn)單性和資源效率的高級(jí)用戶。
Alpine Linux圍繞musl libc和busybox構(gòu)建。這使得它比傳統(tǒng)的GNU / Linux發(fā)行版更小,更節(jié)省資源。一個(gè)容器需要不超過8 MB的空間,而對(duì)磁盤的最小安裝需要大約130 MB的存儲(chǔ)空間。您不僅可以獲得完整的Linux環(huán)境,還可以從存儲(chǔ)庫(kù)中選擇大量的軟件包。
二進(jìn)制軟件包被縮減和拆分,使您可以更好地控制安裝的內(nèi)容,從而使您的環(huán)境盡可能地小巧高效。
Alpine Linux是一個(gè)非常簡(jiǎn)單的發(fā)行版,它會(huì)盡量避免使用。它使用自己的包管理器,稱為apk,OpenRC init系統(tǒng),腳本驅(qū)動(dòng)的設(shè)置,就是這樣!這為您提供了一個(gè)簡(jiǎn)單,清晰的Linux環(huán)境,沒有任何噪音。然后,您可以添加項(xiàng)目所需的軟件包,因此無(wú)論是構(gòu)建家用PVR還是iSCSI存儲(chǔ)控制器,薄型郵件服務(wù)器容器或堅(jiān)如磐石的嵌入式交換機(jī),其他都不會(huì)擋道。
Alpine Linux的設(shè)計(jì)考慮到了安全性。內(nèi)核修補(bǔ)了一個(gè)非官方的grsecurity / PaX端口,并且所有的用戶級(jí)二進(jìn)制文件被編譯為位置獨(dú)立可執(zhí)行文件(PIE)和堆棧粉碎保護(hù)。這些主動(dòng)安全功能可防止利用整個(gè)類別的零日等漏洞。
插個(gè)小消息,也方便想學(xué)習(xí)的同學(xué),在文章下方留言即可試聽課程外加領(lǐng)取千鋒HTML5、UI交互設(shè)計(jì)、PHP、Java+云數(shù)據(jù)、大數(shù)據(jù)開發(fā)、VR/AR/Unity游戲開發(fā)、Python人工智能、Linux云計(jì)算、全棧軟件測(cè)試、網(wǎng)絡(luò)安全等全部的視頻學(xué)習(xí)教程。
LABEL 指令:
LABEL 指令用于指定一個(gè)鏡像的描述信息
該LABEL指令將元數(shù)據(jù)添加到鏡像中。
LABEL是一個(gè)鍵值對(duì)。
要在LABEL值中包含空格,請(qǐng)像在命令行解析中一樣使用引號(hào)和續(xù)行符\。
一個(gè)鏡像可以有多個(gè)LABEL標(biāo)簽。您可以在一行中指定多個(gè)標(biāo)簽。并且目前的版本不再會(huì)影響到鏡像的大小了。
RUN 指令
RUN 指令是在容器內(nèi)執(zhí)行 shell 命令,默認(rèn)會(huì)是用 /bin/sh -c 的方式執(zhí)行。
執(zhí)行命令的兩種方式
RUN(shell形式,該命令在shell中運(yùn)行)RUN ["executable", "param1", "param2"](exec形式)之前說過,Dockerfile 中每一個(gè)指令都會(huì)建立一層,RUN 也不例外。每一個(gè) RUN 的行為,就和剛才我們手工建立鏡像的過程一樣:新建立一層,在其上執(zhí)行這些命令,執(zhí)行結(jié)束后,commit 這一層的修改,構(gòu)成新的鏡像。
注意:Union FS 是有最大層數(shù)限制的,比如 AUFS,曾經(jīng)是最大不得超過 42 層,現(xiàn)在是不得超過 127 層。
所以,在使用 shell 方式,盡量多的使用續(xù)行符\
RUN /bin/bash -c 'source $HOME/.bashrc; \
echo $HOME'
寫 Dockerfile 的時(shí)候,要經(jīng)常提醒自己,這并不是在寫 Shell 腳本,而是在定義每一層該如何構(gòu)建。注意當(dāng)使用 exec 方式時(shí),需要明確指定 shell 路徑,否則變量可能不會(huì)生效。