第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

在Dockerfile中CMD和Enrypoint之間有什么區(qū)別?

在Dockerfile中CMD和Enrypoint之間有什么區(qū)別?

在Dockerfile中CMD和Enrypoint之間有什么區(qū)別?在Dockerfiles中,有兩個(gè)命令看起來類似于我:CMD和ENTRYPOINT..但我想有一種(微妙的?)它們之間的區(qū)別-否則,對(duì)于同一件事情有兩個(gè)命令是沒有任何意義的。文件規(guī)定CMDCMD的主要目的是為正在執(zhí)行的容器提供默認(rèn)值。而為了ENTRYPOINT:入口點(diǎn)幫助您配置可以作為可執(zhí)行文件運(yùn)行的容器。那么,這兩個(gè)命令有什么區(qū)別呢?
查看完整描述

3 回答

?
POPMUISE

TA貢獻(xiàn)1765條經(jīng)驗(yàn) 獲得超5個(gè)贊

Docker有一個(gè)默認(rèn)的入口點(diǎn),即/bin/sh -c但是沒有默認(rèn)命令。

當(dāng)你像這樣經(jīng)營碼頭時(shí):docker run -i -t ubuntu bash入口點(diǎn)是默認(rèn)的/bin/sh -c,圖像是ubuntu命令是bash.

該命令通過入口點(diǎn)運(yùn)行。也就是說,實(shí)際執(zhí)行的事情是/bin/sh -c bash..這允許Docker實(shí)現(xiàn)RUN依賴于shell的解析器。

后來,人們要求能夠定制這個(gè),所以ENTRYPOINT--entrypoint介紹了。

之后的一切ubuntu在上面的例子中,是命令并傳遞給入口點(diǎn)。當(dāng)使用CMD指令,就好像你在做docker run -i -t ubuntu <cmd><cmd>將是入口點(diǎn)的參數(shù)。

如果您輸入以下命令,也會(huì)得到相同的結(jié)果。docker run -i -t ubuntu..您仍將在容器中啟動(dòng)bash shell,因?yàn)?/trans>Ubuntu Dockerfile指定默認(rèn)的CMD:CMD ["bash"]

當(dāng)一切都傳遞到入口點(diǎn)時(shí),您可以從圖像中得到非常好的行為。@Jiri示例很好,它展示了如何使用圖像作為“二進(jìn)制”。使用時(shí)["/bin/cat"]作為切入點(diǎn)然后docker run img /etc/passwd你明白了,/etc/passwd是命令,并被傳遞到入口點(diǎn),因此最終結(jié)果的執(zhí)行是簡單的/bin/cat /etc/passwd.

另一個(gè)例子是有任何cli作為入口點(diǎn)。例如,如果您有一個(gè)redis映像,而不是運(yùn)行docker run redisimg redis -H something -u toto get key,你可以簡單地ENTRYPOINT ["redis", "-H", "something", "-u", "toto"]然后像這樣運(yùn)行,得到相同的結(jié)果:docker run redisimg get key.


查看完整回答
反對(duì) 回復(fù) 2019-06-18
  • 3 回答
  • 0 關(guān)注
  • 824 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)