精品免费在线观看-精品欧美-精品欧美成人bd高清在线观看-精品欧美高清不卡在线-精品欧美日韩一区二区

17站長網(wǎng)

17站長網(wǎng) 首頁 網(wǎng)站 服務器 查看內(nèi)容

Docker 數(shù)據(jù)卷操作的實現(xiàn)

2022-10-7 08:32| 查看: 1400 |來源: 互聯(lián)網(wǎng)

在前面的案例中,如果我們需要將數(shù)據(jù)從宿主機拷貝到容器中,一般都是使用 Docker 的拷貝命令,這樣性能還是稍微有點差,沒有辦法能夠達到讓這種拷貝達到本地磁盤 ...

數(shù)據(jù)卷入門

在前面的案例中,如果我們需要將數(shù)據(jù)從宿主機拷貝到容器中,一般都是使用 Docker 的拷貝命令,這樣性能還是稍微有點差,沒有辦法能夠達到讓這種拷貝達到本地磁盤 I/O 性能呢?有!

數(shù)據(jù)卷可以繞過拷貝系統(tǒng),在多個容器之間、容器和宿主機之間共享目錄或者文件,數(shù)據(jù)卷繞過了拷貝系統(tǒng),可以達到本地磁盤 I/O 性能。

本文先通過一個簡單的案例向讀者展示數(shù)據(jù)卷的基本用法。

以前面使用的 nginx 鏡像為例,在運行該容器時,可以指定一個數(shù)據(jù)卷,命令如下:

docker run -itd --name nginx -v /usr/share/nginx/html/ -p 80:80 bc26f1ed35cf

運行效果如下:

此時,我們創(chuàng)建了一個數(shù)據(jù)卷并且掛載到容器的/usr/share/nginx/html/目錄下,小伙伴們知道,該目錄實際上是 nginx 保存 html 目錄,在這里掛載數(shù)據(jù)卷,一會我們只需要修改本地的映射位置,就能實現(xiàn)頁面的修改了。

接下來使用 docker inspect 命令查看剛剛創(chuàng)建的容器的具體情況,找到數(shù)據(jù)卷映射目錄,如下:

可以看到,Docker默認將宿主機的/var/lib/docker/volumes/0746bdcfc045b237a6fe2288a3af9d7b80136cacb3e965db65a212627e217d75/_data目錄作為source目錄,接下來,進入到該目錄中,如下:

此時發(fā)現(xiàn)該目錄下的文件內(nèi)容與容器中/usr/share/nginx/html/目錄下的文件內(nèi)容一致,這是因為掛載一個空的數(shù)據(jù)卷到容器中的一個非空目錄中,那么這個目錄下的文件會被復制到數(shù)據(jù)卷中(如果掛載一個非空的數(shù)據(jù)卷到容器中的一個目錄中,那么容器中的目錄中會顯示數(shù)據(jù)卷中的數(shù)據(jù)。如果原來容器中的目錄中有數(shù)據(jù),那么這些原始數(shù)據(jù)會被隱藏掉)。

小貼士:

由于 Mac 中的 Docker 有點特殊,上文提到的 /var/lib/xxxx 目錄,如果是在 linux 環(huán)境下,則直接進入即可,如果是在 mac 中,需要首先執(zhí)行如下命令,在新進入的命令行中進入到 /var/lib/xxx 目錄下:

screen ~/Library/Containers/com.docker.docker/Data/vms/0/tty

接下來修改改文件中的index.html文件內(nèi)容,如下:

echo "hello volumes">index.html

修改完成后,再回到瀏覽器中,輸入 http://localhost查看nginx中index.html 頁面中的數(shù)據(jù),發(fā)現(xiàn)已經(jīng)發(fā)生改變。說明宿主機中的文件共享到容器中去了。

結合宿主機目錄

上文中對于數(shù)據(jù)卷的用法還不是最佳方案,一般來說,我們可能需要明確指定將宿主機中的一個目錄掛載到容器中,這種指定方式如下:

docker run -itd --name nginx -v /Users/sang/blog/docker/docker/:/usr/share/nginx/html/ -p 80:80 bc26f1ed35cf

這樣便是將宿主機中的/Users/sang/blog/docker/docker/目錄掛載到容器的/usr/share/nginx/html/目錄下。接下來讀者只需要在 /Users/sang/blog/docker/docker/目錄下添加 html 文件,或者修改 html 文件,都能在 nginx 訪問中立馬看到效果。

這種用法對于開發(fā)測試非常方便,不用重新部署,重啟容器等。

注意:宿主機地址是一個絕對路徑

 更多操作

Dockerfile中的數(shù)據(jù)卷

如果開發(fā)者使用了 Dockerfile 去構建鏡像,也可以在構建鏡像時聲明數(shù)據(jù)卷,例如下面這樣:

FROM nginx
ADD https://www.baidu.com/img/bd_logo1.png /usr/share/nginx/html/
RUN echo "hello docker volume!">/usr/share/nginx/html/index.html
VOLUME /usr/share/nginx/html/

這樣就配置了一個匿名數(shù)據(jù)卷,運行過程中,將數(shù)據(jù)寫入到 [code]/usr/share/nginx/html/[/code] 目錄中,就可以實現(xiàn)容器存儲層的無狀態(tài)變化。

查看所有數(shù)據(jù)卷

使用如下命令可以查看所有數(shù)據(jù)卷:

docker volume ls

如圖:

查看數(shù)據(jù)卷詳情

根據(jù) volume name 可以查看數(shù)據(jù)詳情,如下:

docker volume inspect

執(zhí)行結果如下圖:

刪除數(shù)據(jù)卷

可以使用docker volume rm命令刪除一個數(shù)據(jù)卷,也可以使用docker volume prune批量刪除數(shù)據(jù)卷,如下:

批量刪除時,未能刪除掉所有的數(shù)據(jù)卷,還剩一個,這是因為該數(shù)據(jù)卷還在使用中,將相關的容器停止并移除,再次刪除數(shù)據(jù)卷就可以成功刪除了,如圖:

數(shù)據(jù)卷容器

數(shù)據(jù)卷容器是一個專門用來掛載數(shù)據(jù)卷的容器,該容器主要是供其他容器引用和使用。所謂的數(shù)據(jù)卷容器,實際上就是一個普通的容器,舉例如下:

  • 創(chuàng)建數(shù)據(jù)卷容器

使用如下方式創(chuàng)建數(shù)據(jù)卷容器:

docker run -itd -v /usr/share/nginx/html/ --name mydata ubuntu

命令執(zhí)行效果如下圖:

  • 引用容器

使用如下命令引用數(shù)據(jù)卷容器:

docker run -itd --volumes-from mydata -p 80:80 --name nginx1 nginx
docker run -itd --volumes-from mydata -p 81:80 --name nginx2 nginx

此時, nginx1 和 nginx2 都掛載了同一個數(shù)據(jù)卷到/usr/share/nginx/html/目錄下,三個容器中,任意一個修改了該目錄下的文件,其他兩個都能看到變化。

此時,使用docker inspect命令查看容器的詳情,發(fā)現(xiàn)三個容器關于數(shù)據(jù)卷的描述都是一致的,如下圖:

總結

本文主要向大家介紹了數(shù)據(jù)卷中的容器操作,整體來說還是非常簡單的,小伙伴們,你學會了嗎?

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持17站長網(wǎng)。

本文最后更新于 2022-10-7 08:32,某些文章具有時效性,若有錯誤或已失效,請在網(wǎng)站留言或聯(lián)系站長:17tui@17tui.com
·END·
站長網(wǎng)微信號:w17tui,關注站長、創(chuàng)業(yè)、關注互聯(lián)網(wǎng)人 - 互聯(lián)網(wǎng)創(chuàng)業(yè)者營銷服務中心

免責聲明:本站部分文章和圖片均來自用戶投稿和網(wǎng)絡收集,旨在傳播知識,文章和圖片版權歸原作者及原出處所有,僅供學習與參考,請勿用于商業(yè)用途,如果損害了您的權利,請聯(lián)系我們及時修正或刪除。謝謝!

17站長網(wǎng)微信二維碼

始終以前瞻性的眼光聚焦站長、創(chuàng)業(yè)、互聯(lián)網(wǎng)等領域,為您提供最新最全的互聯(lián)網(wǎng)資訊,幫助站長轉(zhuǎn)型升級,為互聯(lián)網(wǎng)創(chuàng)業(yè)者提供更加優(yōu)質(zhì)的創(chuàng)業(yè)信息和品牌營銷服務,與站長一起進步!讓互聯(lián)網(wǎng)創(chuàng)業(yè)者不再孤獨!

掃一掃,關注站長網(wǎng)微信

大家都在看

熱門排行

    最近更新

      返回頂部
      主站蜘蛛池模板: 成人黄色免费在线观看 | 日本免费一区二区视频 | xxx性欧美人 | 在线观看的黄色网址 | 日韩不卡一二三区 | 欧美亚洲色图视频 | 国产精品手机在线亚洲 | 狠狠色噜噜狠狠狠97影音先锋 | 亚洲精品免费在线观看 | 国产极品美女网站在线观看 | 麻豆免费视频网站入口 | 久久99精品久久 | 黄色一级片免费看 | 欧美一级录像 | 黄色三级三级三级免费看 | 亚洲自偷自偷精品 | 久久综合九色综合亚洲小说 | 香蕉久久夜色精品国产尤物 | 国产精品亚洲第五区在线 | 看免费一级毛片 | 啪啪网免费视频 | 国产精品久久久久久免费 | 性做久久久久久久久浪潮 | 91精品小视频 | 一级二级三级黄色片 | 久久精品视频观看 | 国产成人影院 | 香蕉视频免费 | 视频一区国产 | 亚洲3p| 亚洲免费在线观看视频 | 全黄性性激高免费视频 | 免费一区二区三区视频狠狠 | 国产精品香蕉在线一区 | 被公侵犯肉体中文字幕一区二区 | 国产欧美日韩精品在线 | 亚洲黑人巨大videos0 | 亚洲精品一区二区ai换脸 | 国产精品高清m3u8在线播放 | 看成年全黄大色黄大片 | 超级最爽的乱淫片免费 |