Docker 容器化基礎(chǔ)管理命令

docker 安裝:

wget -O /etc/yum.repos.d/docker-ce.repo https://download.docker.com/linux/centos/docker-ce.repo

sed -i 's+download.docker.com+mirrors.tuna.tsinghua.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo
yum -y install docker-ce
systemctl start docker 

基礎(chǔ)命令

鏡像:

docker search  
docker images
docker pull
docker push 
docker save 
docker load
docker tag
docker rmi

容器:

docker run
docker start
docker stop
docker restart
docker rm 
docker  kill
docker logs
docker history
docker exec -it  bash
docker attach 
docker build 
docker stats
docker commit 
docker ps 
docker ps -a
docker ps -a -q  
docker -s -a -l 
docker rm -f `docker ps -a -q `
docker history
docker stats
docker images -q | xargs docker rm -f !!! 危險(xiǎn)

docker ps -a |fgrep -i exit | awk '{print $1}' | xargs docker rm -f 

docker rm -f `docker ps -a |fgrep -i exit | awk '{print $1}'`
 
for name in `docker ps -a |fgrep -i exit | awk '{print $1}'`;do docker restart $name ; sleep 1 ;done

echo user{1..100}  | xargs -n1 useradd 

docker ps -a | grep -i exit | awk '{print $1}' | xargs docker restart 

docker ps -a  |fgrep -i exit | awk '{print $1}' | xargs docker rm -f 

time for name in {1..100};do docker run -dit  08b152afcfae ;done >> /dev/null

docker ps -a |awk 'NR>1{print $1}' | xargs docker stop 

docker ps -a -q | xargs docker start 


docker run 啟動(dòng)參數(shù)

-d  后臺(tái)運(yùn)行
-i  交互式運(yùn)行
-t  tty終端
--memory    限制容器可以使用的內(nèi)存,如果沒有指定 --memory-swap 那么默認(rèn)和--memory一樣大
eg:  --memory 200m 沒有--memory-swap參數(shù)苞七,那么容器可以使用的內(nèi)存為400m
--memory-swap   設(shè)置swap區(qū)可以使用的內(nèi)存大小姑宽,默認(rèn)和--memory一樣大婆排,必須>=--memory
--cpu-shares    表示占有cpu的相對(duì)權(quán)重
eg:假設(shè)在同一臺(tái)物理主機(jī)上啟動(dòng)了如下2個(gè)容器吩屹,容器1占用的cpu是容器2占有的cpu的2倍屋灌。
同一臺(tái)物理主機(jī)上
        
容器1:
docker run -d  --cpu-shares 10  容器名 
容器2:
docker run  -d  --cpu-shares 5  容器名 
--name  給容器起的名字
--net   指定容器運(yùn)行的網(wǎng)絡(luò)(也可以是自己創(chuàng)建的網(wǎng)絡(luò) docker network create --subnet=172.18.0.0/24  mynet)
-v  指定volume的路徑
    data volume模式:
     別名:容器里面的路徑
    mysql:/var/lib/mysql
    /var/lib/mysql 為Dockerfile 中的volume的值
    使用  docker volume ls 命令查看
    本地創(chuàng)建 mysql 數(shù)據(jù)卷:docker create volume --name mysql
    bind mouting模式:
    本地路徑:容器路徑 
    /var/data:/var/容器目錄
    本地目錄和容器目錄中的文件修改都會(huì)實(shí)時(shí)同步益眉。
--ip    指定容器的ip地址
-P  隨機(jī)映射一個(gè)端口
-p  本地端口:容器端口袭灯。    將容器中的某個(gè)端口映射到本地的某個(gè)端口上
-e  設(shè)置環(huán)境變量
--volumes-from  參數(shù)用于連接某個(gè)指定容器的卷刺下,從而可以訪問到指定容器中的所有的卷。示例:blog_demo表示新容器中掛載了blog_demo容器中所有的卷稽荧。
--rm    表示容器運(yùn)行完成后自動(dòng)刪除
-h  設(shè)置host主機(jī)的名稱

官方版

Usage: docker run [OPTIONS] IMAGE [COMMAND] [ARG...]    
02.  
03.  -d, --detach=false         指定容器運(yùn)行于前臺(tái)還是后臺(tái)橘茉,默認(rèn)為false     
04.  -i, --interactive=false   打開STDIN,用于控制臺(tái)交互    
05.  -t, --tty=false            分配tty設(shè)備姨丈,該可以支持終端登錄捺癞,默認(rèn)為false    
06.  -u, --user=""              指定容器的用戶    
07.  -a, --attach=[]            登錄容器(必須是以docker run -d啟動(dòng)的容器)  
08.  -w, --workdir=""           指定容器的工作目錄   
09.  -c, --cpu-shares=0        設(shè)置容器CPU權(quán)重,在CPU共享場(chǎng)景使用    
10.  -e, --env=[]               指定環(huán)境變量构挤,容器中可以使用該環(huán)境變量    
11.  -m, --memory=""            指定容器的內(nèi)存上限    
12.  -P, --publish-all=false    指定容器暴露的端口    
13.  -p, --publish=[]           指定容器暴露的端口   
14.  -h, --hostname=""          指定容器的主機(jī)名    
15.  -v, --volume=[]            給容器掛載存儲(chǔ)卷,掛載到容器的某個(gè)目錄    
16.  --volumes-from=[]          給容器掛載其他容器上的卷惕鼓,掛載到容器的某個(gè)目錄  
17.  --cap-add=[]               添加權(quán)限筋现,權(quán)限清單詳見:http://linux.die.net/man/7/capabilities    
18.  --cap-drop=[]              刪除權(quán)限,權(quán)限清單詳見:http://linux.die.net/man/7/capabilities    
19.  --cidfile=""               運(yùn)行容器后箱歧,在指定文件中寫入容器PID值矾飞,一種典型的監(jiān)控系統(tǒng)用法    
20.  --cpuset=""                設(shè)置容器可以使用哪些CPU,此參數(shù)可以用來容器獨(dú)占CPU    
21.  --device=[]                添加主機(jī)設(shè)備給容器呀邢,相當(dāng)于設(shè)備直通    
22.  --dns=[]                   指定容器的dns服務(wù)器    
23.  --dns-search=[]            指定容器的dns搜索域名洒沦,寫入到容器的/etc/resolv.conf文件    
24.  --entrypoint=""            覆蓋image的入口點(diǎn)    
25.  --env-file=[]              指定環(huán)境變量文件,文件格式為每行一個(gè)環(huán)境變量    
26.  --expose=[]                指定容器暴露的端口价淌,即修改鏡像的暴露端口    
27.  --link=[]                  指定容器間的關(guān)聯(lián)申眼,使用其他容器的IP瞒津、env等信息    
28.  --lxc-conf=[]              指定容器的配置文件,只有在指定--exec-driver=lxc時(shí)使用    
29.  --name=""                  指定容器名字括尸,后續(xù)可以通過名字進(jìn)行容器管理巷蚪,links特性需要使用名字    
30.  --net="bridge"             容器網(wǎng)絡(luò)設(shè)置:  
31.                                bridge 使用docker daemon指定的網(wǎng)橋       
32.                                host    //容器使用主機(jī)的網(wǎng)絡(luò)    
33.                                container:NAME_or_ID  >//使用其他容器的網(wǎng)路,共享IP和PORT等網(wǎng)絡(luò)資源    
34.                                none 容器使用自己的網(wǎng)絡(luò)(類似--net=bridge)濒翻,但是不進(jìn)行配置   
35.  --privileged=false         指定容器是否為特權(quán)容器屁柏,特權(quán)容器擁有所有的capabilities    
36.  --restart="no"             指定容器停止后的重啟策略:  
37.                                no:容器退出時(shí)不重啟    
38.                                on-failure:容器故障退出(返回值非零)時(shí)重啟   
39.                                always:容器退出時(shí)總是重啟    
40.  --rm=false                 指定容器停止后自動(dòng)刪除容器(不支持以docker run -d啟動(dòng)的容器)    
41.  --sig-proxy=true           設(shè)置由代理接受并處理信號(hào),但是SIGCHLD有送、SIGSTOP和SIGKILL不能被代理    

dockerfile常用指令:

  • FROM 基礎(chǔ)鏡像
  • RUN 制作鏡像過程中需要的執(zhí)行命令(安裝服務(wù))
  • CMD 容器啟動(dòng)的時(shí)候執(zhí)行的初始命令淌喻,容易被替換(啟動(dòng)服務(wù))
  • ENTRYPOINT 容器啟動(dòng)的時(shí)候執(zhí)行的初始命令,不能被替換雀摘,如果同時(shí)使用CMD和- - - ENTRYPOINT裸删,cmd命令將作為ENTRYPOINT命令的參數(shù)
  • ADD 把dockerfile當(dāng)前目錄下的文件拷貝到容器中(自動(dòng)解壓tar包)
  • COPY 把dockerfile當(dāng)前目錄下的文件拷貝到容器中(不解壓tar包)
  • WORKDIR 指定容器的默認(rèn)工作目錄(類似cd)
  • EXPOSE 鏡像要暴露的端口(docker run -P大寫)
  • VOLUME 持久化卷(自動(dòng)創(chuàng)建隨機(jī)名字的卷)
  • ENV 環(huán)境變量(ssh的密碼,數(shù)據(jù)庫(kù)的密碼)
  • LABEL 鏡像的屬性標(biāo)簽
  • MAINTAINER 管理者標(biāo)識(shí)

docker網(wǎng)絡(luò)

  • bridge 默認(rèn)類型 NAT模式
  • host host類型,使用宿主機(jī)網(wǎng)絡(luò)届宠,網(wǎng)絡(luò)性能最高
  • container 容器類型烁落。使用其他容器共用網(wǎng)絡(luò),k8s中使用
  • none 沒有網(wǎng)絡(luò)豌注,上不了外網(wǎng)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
禁止轉(zhuǎn)載伤塌,如需轉(zhuǎn)載請(qǐng)通過簡(jiǎn)信或評(píng)論聯(lián)系作者。
  • 序言:七十年代末轧铁,一起剝皮案震驚了整個(gè)濱河市每聪,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌齿风,老刑警劉巖药薯,帶你破解...
    沈念sama閱讀 222,104評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異救斑,居然都是意外死亡童本,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門脸候,熙熙樓的掌柜王于貴愁眉苦臉地迎上來穷娱,“玉大人,你說我怎么就攤上這事运沦”枚睿” “怎么了?”我有些...
    開封第一講書人閱讀 168,697評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵携添,是天一觀的道長(zhǎng)嫁盲。 經(jīng)常有香客問我,道長(zhǎng)烈掠,這世上最難降的妖魔是什么羞秤? 我笑而不...
    開封第一講書人閱讀 59,836評(píng)論 1 298
  • 正文 為了忘掉前任缸托,我火速辦了婚禮,結(jié)果婚禮上锥腻,老公的妹妹穿的比我還像新娘嗦董。我一直安慰自己,他們只是感情好瘦黑,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,851評(píng)論 6 397
  • 文/花漫 我一把揭開白布京革。 她就那樣靜靜地躺著,像睡著了一般幸斥。 火紅的嫁衣襯著肌膚如雪匹摇。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,441評(píng)論 1 310
  • 那天甲葬,我揣著相機(jī)與錄音廊勃,去河邊找鬼。 笑死经窖,一個(gè)胖子當(dāng)著我的面吹牛坡垫,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播画侣,決...
    沈念sama閱讀 40,992評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼冰悠,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了配乱?” 一聲冷哼從身側(cè)響起溉卓,我...
    開封第一講書人閱讀 39,899評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎搬泥,沒想到半個(gè)月后桑寨,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,457評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡忿檩,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,529評(píng)論 3 341
  • 正文 我和宋清朗相戀三年尉尾,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片燥透。...
    茶點(diǎn)故事閱讀 40,664評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡代赁,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出兽掰,到底是詐尸還是另有隱情,我是刑警寧澤徒役,帶...
    沈念sama閱讀 36,346評(píng)論 5 350
  • 正文 年R本政府宣布孽尽,位于F島的核電站,受9級(jí)特大地震影響忧勿,放射性物質(zhì)發(fā)生泄漏杉女。R本人自食惡果不足惜瞻讽,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,025評(píng)論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望熏挎。 院中可真熱鬧速勇,春花似錦、人聲如沸坎拐。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽哼勇。三九已至都伪,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間积担,已是汗流浹背陨晶。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留帝璧,地道東北人先誉。 一個(gè)月前我還...
    沈念sama閱讀 49,081評(píng)論 3 377
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像的烁,于是被迫代替她去往敵國(guó)和親褐耳。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,675評(píng)論 2 359

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