day108 Docker簡單命令

1.docker的原理
Docker就是虛擬化的一種輕量級(jí)替代技術(shù)酥宴。Docker的容器技術(shù)不依賴任何語言纲辽、框架或系統(tǒng)斜纪,可以將APP編程一種標(biāo)準(zhǔn)化、可移植的文兑、自管理的軟件,并脫離服務(wù)器硬件在任何主流系統(tǒng)中開發(fā)腺劣、調(diào)試和運(yùn)行绿贞。
簡單的說就是,在Linux系統(tǒng)上迅速創(chuàng)建一個(gè)容器(類似虛擬機(jī))并在容器上部署和運(yùn)行應(yīng)用程序橘原,并通過配置文件可以輕松實(shí)現(xiàn)應(yīng)用程序的自動(dòng)化安裝籍铁、部署和升級(jí),非場方便趾断。因?yàn)槭褂昧巳萜骶苊钥梢院芊奖愕陌焉a(chǎn)環(huán)境和開發(fā)環(huán)境分開,互不影響芋酌,這是docker最普通的一個(gè)玩法增显。

2.dockerfile的書寫主要有add,volume脐帝,file同云,from,env堵腹,cmd炸站,entrypoint,workspace等命令

3.docker 鏡像你們是如何制作的,制作鏡像的原則是什么
鏡像制作技巧:
1)盡量合并Dockerfile命令疚顷,以便減少鏡像層數(shù)旱易,進(jìn)而減少commit/run/rm次數(shù),加快構(gòu)建腿堤;
2)調(diào)整命令前后順序阀坏,以便提高復(fù)用度及cache命中率,加速構(gòu)建笆檀;(比如像RUN apt-get -y update這類大多鏡像都需要用到命令應(yīng)該放在上面全释,以便跨鏡像復(fù)用。然而像WORKDIR误债、CMD浸船、ENV妄迁、ADD這些很可能導(dǎo)致cache miss的命令應(yīng)該放在底部)
鏡像制作原則:
1)盡量生成一個(gè)base,便于版本的迭代和作為公用鏡像李命;
2)清晰的注釋登淘,提高可讀性,便于自己及他人理解封字;
8.Dockerfile 你們常用的命令有哪幾個(gè),列舉下作用是什么
CMD(設(shè)置容器啟動(dòng)時(shí)要運(yùn)行的命令只有在你執(zhí)行 docker run 或者 docker start 命令是才會(huì)運(yùn)行黔州,其他情況下不運(yùn)行)
EXPOSE(設(shè)置暴露端口號(hào)) ENV(設(shè)置環(huán)境變量) ADD(復(fù)制命令,把本地的文件復(fù)制到鏡像中)
COPY(與ADD指令類似但是COPY的src部分只能是本地文件阔籽,文件路徑是Dockerfile的相對(duì)路徑流妻。如果COPY的是壓縮包不會(huì)幫你解壓。) VOLUME(設(shè)置一個(gè)卷笆制,保存容器中產(chǎn)生的數(shù)據(jù)) WORKDIR(指定容器的工作目錄)

4.Docker常用命令
啟容器绅这,停容器,創(chuàng)建容器在辆,使用docker run证薇、docker start docker create等命令
docker ps 查看容器,然后就是docker存儲(chǔ)的管理匆篓, -v我們可以將宿主機(jī)的目錄掛載到容器中浑度,
容器存儲(chǔ)的文件就相當(dāng)于存儲(chǔ)到了宿主機(jī)的磁盤中。

4.如何使用Docker構(gòu)建與環(huán)境無關(guān)的系統(tǒng)
只讀文件系統(tǒng)
環(huán)境變量注入
存儲(chǔ)卷

10.Dockerfile中的命令COPY和ADD命令有什么區(qū)別
COPY指令和ADD指令的唯一區(qū)別在于是否支持從遠(yuǎn)程URL獲取資源鸦概。COPY指令只能從執(zhí)行docker build所在的主機(jī)上讀取資源并復(fù)制到鏡像中箩张。而ADD指令還支持通過URL從遠(yuǎn)程服務(wù)器讀取資源并復(fù)制到鏡像中。

11.什么是Docker Hub
Docker Hub被用于源代碼管理集成窗市,也用于構(gòu)建和測(cè)試工具來加速部署周期伏钠,部署周期從天減少到以分鐘計(jì)算,Docker宣稱已經(jīng)允許用戶加速應(yīng)用的傳輸

12.Docker Image和Layer有什么區(qū)別
Docker鏡像是一層一層組成的谨设,每層代表鏡像Dockerfile的一行命令熟掂。除了最后一層,其他的層都是只讀的
當(dāng)你運(yùn)行鏡像的時(shí)候扎拣,會(huì)有一個(gè)稱為container layer的可讀寫層赴肚,如上圖所示。
這意味著二蓝,你運(yùn)行此鏡像的多個(gè)實(shí)例誉券,也就是多個(gè)容器時(shí),把所有變動(dòng)都寫到Container layer這一層刊愚,而不影響鏡像里面的文件層

13.生產(chǎn)中如何監(jiān)控Docker

  1. 部署cadvisor容器踊跟,用來收集host上的容器信息,該容器部署在需要收集容器信息的每一個(gè)主機(jī)上部署;
    docker run -v /:/rootfs:ro -v /var/run:/var/run:rw -v /sys:/sys:ro -v /var/lib/docker:/var/lib/docker:ro -v /dev/disk:/dev/disk:ro -p 8080:8080 --detach=true --name cadvisor google/cadvisor
    2.部署grafana容器商玫,用于將收集的主機(jī)容器數(shù)據(jù)顯示到瀏覽器
    docker run -d -p 3000:3000 --name grafana --net=host grafana/grafana
    3.部署prometheus server ,選定一臺(tái)服務(wù)器
    docker run -d -p 9090:9090 -v /root/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml -v /root/prometheus/alert.rules:/etc/prometheus/alert.rules -v /root/prometheus/conf.d:/etc/prometheus/conf.d --name prometheus --net=host prom/prometheus
    更改static_configs:
    4.部署node-exporter
    docker run -d -p 9100:9100 -v /proc:/host/proc -v /sys:/host/sys -v /:/rootfs --name node-exporter --net=host prom/node-exporter --path.procfs /host/proc --path.sysfs /host/sys --collector.filesystem.ignored-mount-points "^/(sys|proc|dev|host|etc)($|/)"
    5.部署告警(釘釘告警)

1.如何查看容器的統(tǒng)計(jì)信息? B
(B) Docker stats容器id

2.docker容器重啟命令是: C
(C) docker restart容器ID

3.Docker是一個(gè)開源的應(yīng)用容器引擎箕憾,所以Docker是容器的一種類型 A
(A)正確
(B)錯(cuò)誤

請(qǐng)判斷查看容器的進(jìn)程命令為Docker top容器id是否正確 A **
(A)正確
(B)錯(cuò)誤

一個(gè)apache鏡像對(duì)外服務(wù)端口不可以修改 B
(A)是

(B)否
docker需要查詢?nèi)罩緫?yīng)該使用什么命令? C
(C) docker logs

docker把主機(jī)的/tmp/abc.txt文件復(fù)制到容器2d0abd3328cf里的/tmp,以下哪個(gè)命令正確 B*
docker cp /tmp/abc.txt 2d0abd3328cf:/tmp

查看容器屬性的方法 A
A docker info

docker環(huán)境下,下面通過哪個(gè)命令可以查看docker的CONTAINER ID ?D
(D) docker ps -a

docker如何批量清理臨時(shí)鏡像文件? B *
B sudo docker rmi $(sudo docker images -q -f danging=true)

如何備份一個(gè)docker 鏡像? B
(A) docker backup

(B docker save
C docker export
(D docker write

容器具有數(shù)據(jù)持久化特性拳昌,無論進(jìn)入容器進(jìn)行什么樣的更改袭异,退出容器后再重新啟動(dòng)容器,里面數(shù)據(jù)不會(huì)丟失 A
A對(duì)
B錯(cuò)

啟動(dòng)nginx容器(隨機(jī)端口映射)炬藤,并掛載本地文件目錄到容器html的命令是? A
(A) docker run -d -P -name nginx2 -V /home/nginx:/usr/share/nginx/html nginx

docker pull命令用于鏡像下載 A
A正確
B)錯(cuò)誤

容器退出后御铃,通過docker ps命令查看不到,數(shù)據(jù)會(huì)丟失 B
(A) 正確

B錯(cuò)誤
如何執(zhí)行一個(gè)docker 鏡像?B
(A docker exec

B docker run
C docker do
D docker go

docker本地的鏡像文件都存放在哪里 A
A /varlib/docker/目錄下

Docker能在非Linux平臺(tái)(Windows+MacOS) 上運(yùn)行 B
A)正確

B錯(cuò)誤
Docker Hub:是用于分享沈矿、管理Docker容器的Docker SaaS平臺(tái) A
A正確
B)錯(cuò)誤

在使用docker create命令創(chuàng)建容器或使用docker run創(chuàng)建并運(yùn)行容器的時(shí)候上真。可以使用-m)-memory參數(shù)來調(diào)整容器使用內(nèi)存的大小羹膳。A
A正確
(B錯(cuò)誤

在使用docker create命令創(chuàng)建容器或使用docker run創(chuàng)建并運(yùn)行容器的時(shí)候睡互,不可以使用-c|cpu-shares[=0]參數(shù)來調(diào)整同期使用CPU的權(quán)重,錯(cuò)誤
如何查看容器abc的詳細(xì)信息? D
D Docker inspect abc

Redhat操作系統(tǒng)中溜徙,不可以運(yùn)行ubuntu鏡像 B
(A) 是

B)否
docker如何停止所有正在運(yùn)行的容器? D
(D docker kill $ (sudo docker ps -a -q)

docker環(huán)境下,如何無需進(jìn)入docker從docker中拷貝文件到本地?A
A) docker cp 容器id:/root.bashrc /tmp/
B ftp
C scp :/root.bashrc /tmp
(D) docker scp容器id:/oot.bashrc /tmp/

Docker命令非常豐富犀填,以下哪個(gè)子命令查看容器的運(yùn)行狀態(tài) B
B docker ps

進(jìn)入容器執(zhí)行方法 A
(A) docker exec

使用什么命令能把一個(gè)鏡像下載到本地 B
B) docker pull

鏡像不允許用戶自己修改 B
A)是

B 否
docker如何臨時(shí)退出一個(gè)正在交互的容器的終端蠢壹,而不終止它? A
A 按Ctrl+p, 后按Ctrl+q,如果按Crl+c會(huì)使容器內(nèi)的應(yīng)用進(jìn)程終止,進(jìn)而會(huì)使容器終止九巡。

很多種容器編排工具图贸,最流行的目前是kubernets,即k8s A
A是
B否

容器與虛擬化的描述錯(cuò)誤的是 D
(A 容器比虛擬機(jī)少了OS
(B) 容器開銷更小
C 容器啟動(dòng)速度更快,毫秒級(jí)
image-20200121222411785

D 虛擬機(jī)比容器鏡像更小
docker容器運(yùn)行時(shí)冕广,可以指定CPU親和性疏日, 內(nèi)存大小 A
A是
B)否

容器退出后,使用docker ps命令無法查看到撒汉,說明容器被自動(dòng)刪除了? B
A對(duì)

B)錯(cuò)
如何搜索docker鏡像nginx? C
(A) Docker pull centos
B Docker search nginex

C Docker search nginx
D Docker pull cento
Docker能在32位的系統(tǒng)里運(yùn)行沟优。B
A)正確
錯(cuò)誤

很多應(yīng)用容器都是默認(rèn)后臺(tái)運(yùn)行的,怎么查看它們的輸出和日志信息? C
A) docker log
(B) docker logarithms

C docker logs
D docker logarithm

有關(guān)docker下列說法正確的是 ACD *
A 當(dāng)我們?cè)诒镜刂鳈C(jī)上使用一個(gè)不存在的鏡像時(shí) Docker就會(huì)自動(dòng)下載這個(gè)鏡像睬辐。如果我們想預(yù)先下載這個(gè)鏡像挠阁,我們可以使用docker pull命令來下載它。#docker pull ubuntu:13.10,同樣設(shè)置鏡像標(biāo)簽#docker tag 860c279d2fec runooblcentos:dev溯饵。
B docker stats動(dòng)態(tài)查看docker源消耗情況侵俗,包括:內(nèi)存、網(wǎng)絡(luò)I/O但是不包括CPU丰刊。

C docker通過exec可以創(chuàng)建兩種任務(wù)(后臺(tái)型任務(wù)和交互型任務(wù))交互型任務(wù): docker exec - it "容器ID" /bin/bash后臺(tái)型任務(wù):docker exec _d "容器ID" touch 123.
D 批量操作容器隘谣, docker ps -q只列出docker id
如何啟動(dòng)本機(jī)Docker服務(wù) A
A $ sudo systemctl start docker
net選項(xiàng)后面可以跟哪些參數(shù)? ABC *
A None
B host
C bridge

docker的存儲(chǔ)驅(qū)動(dòng)程序有哪些 ABCDE *
A AUES
B Btrfs
C Device mapper
D OverlayFS|E
E ZFS

docker命令以下哪些為高危操作 A *
A docker rm容器id
B docker inspect容器ID
C docker mv容器ID
D docker rm -f鏡像ID

Docker的核心組件有哪些? ACD
A 鏡像
C 容器
D 倉庫

docker網(wǎng)絡(luò)模式包括 ABCD
A host模式
B container模式
C none模式
D bridge模式

Docker的主要用途有() ABC *
A 提供一次性的環(huán)境
B 提供彈性的云服務(wù)
C 組建微服務(wù)架構(gòu)

有關(guān)docker正確的是 ABCD
A docker info 可以查看到集群內(nèi)容器的數(shù)量
B docker ps容器ID (參數(shù)-a:顯示所有容器,包括未運(yùn)行的; -n: 列出最近創(chuàng)建的n個(gè)容器)
C docker pause暫停容器中所有的進(jìn)程
D docker run創(chuàng)建一個(gè)新的容器并且啟動(dòng)它

構(gòu)建Docker鏡像應(yīng)該遵循哪些原則? ABCDE
A盡量選取滿足需求但較小的基礎(chǔ)系統(tǒng)鏡像啄巧, 建議選擇debian:wheezy鏡像寻歧, 僅有43MB大小
B請(qǐng)理編譯生成文件掌栅、 安裝包的緩存等臨時(shí)文件
C安裝各個(gè)軟件時(shí)候要指定準(zhǔn)確的版本號(hào), 并避免引入不需要的依賴
D從安全的角度考慮熄求, 應(yīng)用盡量使用系統(tǒng)的庫和依賴
E使用Dockerfile創(chuàng)建鏡像時(shí)候要添加.dockerignore文件或使用干凈的工作目錄

docker容器與主機(jī)之間的數(shù)據(jù)拷貝命令是? CD *
A docker pc /www 96f7f14e99ab:/www/
B docker cp /www 96f7f14e99ab:/www/
C docker cp 96f7f14e99ab:/www /wwwl
D docker cp 967f14e99b:/www /tmp/

以下哪些命令能構(gòu)建一個(gè)鏡像? ABD
A docker create
B docker commit
(C docker add
D docker build

docker進(jìn)入容器的方法有哪些? CD
C 使用 docker attach命令
D 使用exec命令

作者:三德書生
鏈接:http://www.reibang.com/p/4774cd39ac8a
來源:簡書
著作權(quán)歸作者所有渣玲。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處弟晚。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末忘衍,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子卿城,更是在濱河造成了極大的恐慌枚钓,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,968評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瑟押,死亡現(xiàn)場離奇詭異搀捷,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)多望,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門嫩舟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人怀偷,你說我怎么就攤上這事家厌。” “怎么了椎工?”我有些...
    開封第一講書人閱讀 153,220評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵饭于,是天一觀的道長。 經(jīng)常有香客問我维蒙,道長掰吕,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,416評(píng)論 1 279
  • 正文 為了忘掉前任颅痊,我火速辦了婚禮殖熟,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘斑响。我一直安慰自己吗讶,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,425評(píng)論 5 374
  • 文/花漫 我一把揭開白布恋捆。 她就那樣靜靜地躺著照皆,像睡著了一般。 火紅的嫁衣襯著肌膚如雪沸停。 梳的紋絲不亂的頭發(fā)上膜毁,一...
    開封第一講書人閱讀 49,144評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼瘟滨。 笑死候醒,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的杂瘸。 我是一名探鬼主播倒淫,決...
    沈念sama閱讀 38,432評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼败玉!你這毒婦竟也來了敌土?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,088評(píng)論 0 261
  • 序言:老撾萬榮一對(duì)情侶失蹤运翼,失蹤者是張志新(化名)和其女友劉穎返干,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體血淌,經(jīng)...
    沈念sama閱讀 43,586評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡矩欠,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,028評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了悠夯。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片癌淮。...
    茶點(diǎn)故事閱讀 38,137評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖沦补,靈堂內(nèi)的尸體忽然破棺而出乳蓄,到底是詐尸還是另有隱情,我是刑警寧澤策彤,帶...
    沈念sama閱讀 33,783評(píng)論 4 324
  • 正文 年R本政府宣布栓袖,位于F島的核電站匣摘,受9級(jí)特大地震影響店诗,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜音榜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,343評(píng)論 3 307
  • 文/蒙蒙 一庞瘸、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧赠叼,春花似錦擦囊、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至涧郊,卻和暖如春贯被,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評(píng)論 1 262
  • 我被黑心中介騙來泰國打工彤灶, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留看幼,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,595評(píng)論 2 355
  • 正文 我出身青樓幌陕,卻偏偏與公主長得像诵姜,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子搏熄,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,901評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 特別說明: 本人平時(shí)混跡于 B 站棚唆,不咋回復(fù)這里的評(píng)論,有問題可以到 B 站視頻評(píng)論區(qū)留言找我視頻地址: http...
    擼帝閱讀 865評(píng)論 1 3
  • 一搬卒、Docker 簡介 Docker 兩個(gè)主要部件:Docker: 開源的容器虛擬化平臺(tái)Docker Hub: 用...
    R_X閱讀 4,379評(píng)論 0 27
  • 五瑟俭、Docker 端口映射 無論如何,這些 ip 是基于本地系統(tǒng)的并且容器的端口非本地主機(jī)是訪問不到的契邀。此外摆寄,除了...
    R_X閱讀 1,738評(píng)論 0 7
  • linux 查看系統(tǒng)版本確認(rèn)使用的docker版本 uname -a --查看Linux內(nèi)核版本命令cat /pr...
    只有香如故閱讀 1,205評(píng)論 1 4
  • 第二周 上課時(shí)間:9.7 中秋課程 一、詩歌坯门,拍胸脯大腿節(jié)奏 《古朗月行》唐 李白 二微饥、蜂蠟 捏中秋拜月供桌 在捏...
    白金尺Sara閱讀 94評(píng)論 0 1