docker 資料管理
如何在 docker 內部以及容器之間管理資料,在容器中管理資料主要有兩種方式:
資料卷
是乙個可供乙個或多個容器使用的特殊目錄,它繞過 ufs,可以提供很多有用的特性:
注意:資料卷的使用,類似於 linux 下對目錄或檔案進行 mount,映象中的被指定為掛載點的目錄中的檔案會隱藏掉,能顯示看的是掛載的資料卷。
建立乙個資料卷
# docker volume create my-vol
my-vol
檢視所有的資料卷
# docker volume ls
driver volume name
local my-vol
檢視指定資料卷的資訊
# docker volume inspect my-vol
[,"mountpoint": "/var/lib/docker/volumes/my-vol/_data",
"name": "my-vol",
"options": {},
"scope": "local"
}]
啟動乙個掛載資料卷的容器
docker 新使用者推薦使用 --mount 引數,將資料卷掛載到容器裡。在一次docker run 中可以掛載多個資料卷。
# docker run -d -p 8080:80 --name web --mount source=my-vol,target=/usr/share/nginx/html nginx
把宿主機本地my-vol資料卷掛載到nginx容器的預設目錄;
[root@localhost _data]# pwd
/var/lib/docker/volumes/my-vol/_data
[root@localhost _data]# ls -l
-rw-r--r-- 1 root root 39 may 16 11:24 index.html
使用curl測試,訪問到的內容是本地檔案;
檢視資料卷的具體資訊
# docker inspect web
資料卷的資訊在mounts這一段
"mounts": [
掛載乙個本地主機檔案作為資料卷
# docker run --rm -it --mount type=bind,source=$home/.bash_history,target=/root/.bash_history ubuntu:16.04 bash
root@9a22d85fba61:/# whoami
root
root@9a22d85fba61:/# pwd
root@9a22d85fba61:/# exit
exit
把本地.bash_history檔案掛載到容器裡,就可以記錄在容器輸入過的命令
[root@localhost volumes]# cat /root/.bash_history
whoami
pwdexit
Docker之資料管理
容器中管理資料主要有兩種方法 資料卷是乙個可供容器使用的特殊目錄,它繞過檔案系統,可以提供很多有用的特性 資料卷的使用,類似於linux下對目錄或檔案進行mount操作。在容器內建立乙個資料卷 p是允許外部訪問容器需要暴露的埠 掛載乙個主機目錄作為資料卷 使用 v標記也可以指定掛載乙個本地的已有目錄...
Docker學習 八 Docker資料管理
生產環境中使用docker的過程中,需要對資料進行持久化,或者需要在多個容器之間進行資料共享,這必然涉及容器的資料管理操作 容器中管理資料主要有兩種方式 1 資料卷 容器內資料直接對映到本地主機環境 2 資料卷容器 使用特定容器維護資料卷 資料卷是乙個可供容器使用的特殊目錄,它將主機作業系統目錄直接...
Docker 資料管理
1.在容器中管理資料主要有兩種方式 資料卷 data volumes 資料卷容器 data volume containers 資料卷資料卷是乙個可供乙個或多個容器使用的特殊目錄,它繞過 ufs,可以提供很多有用的特性 資料卷可以在容器之間共享和重用 對資料卷的修改會立馬生效 對資料卷的更新,不會影...