Docker:常用命令 與 掛載目錄

Docker 服務(wù)常用命令

  1. 設(shè)置 Docker 服務(wù)自動啟動
sudo systemctl enable docker.service
  1. 啟動 Docker 服務(wù)
sudo systemctl start docker.service
  1. 關(guān)閉 Docker 服務(wù)
sudo systemctl stop docker.service
  1. 查看 Docker 服務(wù)狀態(tài)
sudo systemctl status docker.service

Docker 鏡像常用命令

  1. 搜索鏡像:可使用 docker search 命令搜索存放在 Docker Hub 中的鏡像谒获,顯示的信息包括:
屬性 描述
NAME 鏡像倉庫名稱
DESCRIPTION 鏡像倉庫描述
STARS 鏡像倉庫收藏數(shù)
OFFICAL 是否官方庫
AUTOMATED 是否自動構(gòu)建的鏡像倉庫
docker search java
  1. 下載鏡像:通過 docker pull 命令從 Docker Registry 上下載鏡像
docker pull java
docker pull reg.itmuch.com/java:7   //指定下載鏡像的標(biāo)簽以及 Docker Registry
  1. 列出鏡像摹闽,顯示的信息包括:
屬性 描述
REPOSITORY 鏡像所屬倉庫名
TAG 鏡像標(biāo)簽,默認(rèn)是 latest箭启,表示最新
IMAGE ID 鏡像ID
CREATED 鏡像創(chuàng)建時間
SIZE 鏡像大小
docker images
  1. 刪除本地鏡像
docker rmi hello-world      #刪除指定名稱鏡像
docker rmi -f $(docker images)      #刪除所有鏡像

Docker 容器常用命令

  1. 通過 docker run 新建并啟動容器乾颁,還可以附加一些常用選項
    • -d:表示后臺運行
    • -P:隨機端口映射
    • -v:指定掛載目錄
    • -it:創(chuàng)建一個交互式的容器
    • -p:指定端口映射涂乌,ip 表示主機 IP、hostPort 表示宿主主機端口英岭、containerPort 表示容器端口湾盒,有以下四種格式:
      • ip:hostPort:containerPort
      • ip:containerPort
      • hostPort:containerPort
      • containerPort
    • -network:指定網(wǎng)絡(luò)模式,該選項有以下可選參數(shù)
      • -network=bridge:默認(rèn)選項巴席,表示連接到默認(rèn)的網(wǎng)橋
      • -network=host:容器使用的宿主機器的網(wǎng)絡(luò)
      • -network=container:NAME_or_ID:告訴 Docker 讓新建的容器使用已有的容器網(wǎng)絡(luò)配置
      • -network=none:不配置容器網(wǎng)絡(luò)历涝,用戶可自定義網(wǎng)絡(luò)配置
  • 下面命令會讓終端打印 Hello World 字樣,跟在本地直接執(zhí)行 /bin/echo 'Hello World' 一樣
docker run java /bin/echo 'Hello World'
  • 啟動一個 Nginx 容器(默認(rèn)Nginx配置為80端口)漾唉,指定宿主機端口(這里指定端口為91)荧库,當(dāng)訪問 http://Docker宿主機IP:91/ 時會映射到容器80端口中,即可看到 Nginx 主頁
docker run -d -p 91:80 nginx

docker run 命令在創(chuàng)建容器時赵刑,會檢查本地是否存在指定鏡像分衫,如果不存在則從 Docker Hub 下載并啟動

  1. 列出容器
  • 使用 docker ps 命令即可列出運行中的容器,顯示的信息包括:
屬性 描述
CONTAINER_ID 容器ID
IMAGE 鏡像名稱
COMMAND 啟動容器時運行的命令
CREATED 容器創(chuàng)建的時間
STATUS 容器運行的狀態(tài)般此,UP 表示運行中蚪战,Exited 已停止
PORTS 容器對外端口號
NAMES 容器名稱,默認(rèn)由 Docker 自動生成铐懊,也可使用 docker run --name 選項指定
docker ps
docker ps -a #顯示容器邀桑,包含停止的容器
  1. 停止容器
  • 使用 docker stop 命令停止容器,784fd3b294d7 為容器 ID科乎,也可使用容器名稱來停止容器
docker stop 784fd3b294d7
  • 強制停止容器
docker kill 784fd3b294d7
  1. 啟動停止的容器
  • 通過 docker run 命令即可新建并啟動一個容器壁畸,對于已停止的容器,可使用 docker start 命令來啟動
docker start 784fd3b294d7
  1. 重啟容器
  • 可使用 docker restart 命令來重啟容器
docker restart
  1. 進(jìn)入容器
  • 某些場景下,可能需要進(jìn)入運行中的容器
    • 使用 docker attach 命令進(jìn)入容器(已過時)捏萍,當(dāng)多個窗口同時 attach 到同一個容器時所有窗口都會同步顯示太抓,同理阻塞的時候其它窗口也無法操作
    docker attach 784fd3b294d7
    
    • 使用 exec 命令進(jìn)入容器(推薦)
    docker exec -i -t 784fd3b294d7 /bin/bash
    
    • 使用 exit 退出容器
      • 若使用 attach 方式進(jìn)入容器,執(zhí)行 exit 容器也會被關(guān)閉
      • 若使用 exec 方式進(jìn)入容器令杈,執(zhí)行 exit 容器不會被關(guān)閉
    exit
    
  • 獲得 PID 后走敌,就可以使用 nsenter 命令進(jìn)入容器了
nsenter --target "$PID" --mount --uts --ipc --net --pid
  1. 刪除容器
  • 使用 docker rm 命令刪除指定容器,該命令只能刪除停止運行的容器
docker rm 784fd3b294d7
  • 如果需要刪除正在運行的容器逗噩,可使用 -f
docker rm -f $(docker ps -a -q)
  1. 數(shù)據(jù)拷貝
  • docker cp 命令用于容器與主機之間的數(shù)據(jù)拷貝
    • 將主機 /www/runoob 目錄拷貝到容器 96f7f14e99ab 的 /www 目錄下
    docker cp /www/runoob 96f7f14e99ab:/www/
    
    • 將容器 96f7f14e99ab 的 /www 目錄拷貝到主機的 /tmp 目錄中
    docker cp 96f7f14e99ab:/www /tmp/
    
  1. 獲取容器/鏡像的元數(shù)據(jù)
  • 通過 docker inspect 來獲取元數(shù)據(jù)掉丽,包含掛載目錄信息等
docker inspect linyuantongxue/docker-demo:0.0.1

Docker 掛載目錄

  • 掛載目錄后鏡像內(nèi)就可以共享宿主機里的文件
  • 通過 run -v 參數(shù)指定掛載目錄(格式:宿主機目錄:鏡像內(nèi)掛載目錄),如果宿主機目錄不存在則創(chuàng)建
  • Centos7 中本地掛載的目錄在容器中沒有執(zhí)行權(quán)限给赞,通過 --privileged=true 給容器加特權(quán)
  • 下面以 centos 鏡像為例:
    1. 通過 Centos 鏡像運行一個容器机打,并設(shè)置掛載目錄
    docker run -it -v /home/linyuan/Downloads/data:/data centos
    
    1. 此時可看到宿主機上 /home/linyuan/Downloads 文件夾下多出了 /data 目錄
    2. 因為通過 -it 參數(shù)矫户,已進(jìn)入容器內(nèi)部片迅,通過 ls -a 命令查看文件夾,可看見多出 /data 目錄皆辽,通過 cd 命令進(jìn)入文件夾下并新建文件 touch a.txt
    3. 可看見宿主機 /data 目錄也會存在該文件
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末柑蛇,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子驱闷,更是在濱河造成了極大的恐慌耻台,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件空另,死亡現(xiàn)場離奇詭異盆耽,居然都是意外死亡,警方通過查閱死者的電腦和手機扼菠,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進(jìn)店門摄杂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人循榆,你說我怎么就攤上這事析恢。” “怎么了秧饮?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵映挂,是天一觀的道長。 經(jīng)常有香客問我盗尸,道長柑船,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任泼各,我火速辦了婚禮鞍时,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘历恐。我一直安慰自己寸癌,他們只是感情好专筷,可當(dāng)我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著蒸苇,像睡著了一般磷蛹。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上溪烤,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天味咳,我揣著相機與錄音,去河邊找鬼檬嘀。 笑死槽驶,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的鸳兽。 我是一名探鬼主播掂铐,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼揍异!你這毒婦竟也來了全陨?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤衷掷,失蹤者是張志新(化名)和其女友劉穎辱姨,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體戚嗅,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡雨涛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了懦胞。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片替久。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖医瘫,靈堂內(nèi)的尸體忽然破棺而出侣肄,到底是詐尸還是另有隱情,我是刑警寧澤醇份,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布稼锅,位于F島的核電站,受9級特大地震影響僚纷,放射性物質(zhì)發(fā)生泄漏矩距。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一怖竭、第九天 我趴在偏房一處隱蔽的房頂上張望锥债。 院中可真熱鬧,春花似錦、人聲如沸哮肚。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽允趟。三九已至恼策,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間潮剪,已是汗流浹背涣楷。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留抗碰,地道東北人狮斗。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像弧蝇,于是被迫代替她去往敵國和親碳褒。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,916評論 2 344

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