数据共享与持久化

  数据卷

数据卷


$ docker volume inspect my-vol
[
{
"Driver": "local",
"Labels": {},
"Mountpoint": "/var/lib/docker/volumes/my-vol/_data",
"Name": "my-vol",
"Options": {},
"Scope": "local"
   }
]
快速开发平台启动一个挂载数据卷的容器:在用 docker run 命令的时候,使用 --mount 标记来将 数据卷 挂载到容
器里。在一次 docker run 中可以挂载多个 数据卷。下面创建一个名为 web 的容器,并加载一个 数据
卷 到容器的 /webapp 目录。
$ docker run -d -P \
--name web \
# -v my-vol:/wepapp \
--mount source=my-vol,target=/webapp \
training/webapp \
python app.py
查看数据卷的具体信息:在主机?使?以下命令可以查看 web 容器的信息
$ docker inspect web
...
"Mounts": [
{
"Type": "volume",
"Name": "my-vol",
"Source": "/var/lib/docker/volumes/my-vol/_data",
"Destination": "/app",
"Driver": "local",
"Mode": "",
"RW": true,
"Propagation": ""
}
],
...

删除数据卷

删除数据卷

挂载主机目录

选择 -v 还是 -–mount 参数: Docker 新用户应该选择 --mount 参数,经验丰富的 Docker 使用者对 -v
或者 --volume 已经很熟悉了,但是推荐使用 --mount 参数。

挂载一个主机目录作为数据卷:使用 --mount 标记可以指定挂载一个本地主机的目录到容器中去。

$ docker run -d -P \
--name web \
# -v /src/webapp:/opt/webapp \
--mount type=bind,source=/src/webapp,target=/opt/webapp \
training/webapp \
python app.py

Docrer挂载主机目录的默认权限是读写


查看数据卷的具体信息:在主机里使用以下命令可以查看 web 容器的信息
$ docker inspect web
...
"Mounts": [
{
"Type": "bind",
"Source": "/src/webapp",
"Destination": "/opt/webapp",
"Mode": "",
"RW": true,
"Propagation": "rprivate"
}
],
挂载提个本地主机文件作为数据卷: --mount 标记也可以从主机挂载单个文件到容器中
$ docker run --rm -it \
# -v $HOME/.bash_history:/root/.bash_history \
--mount type=bind,source=$HOME/.bash_history,target=/root/.bash_history \
ubuntu:17.10 \
bash
root@2affd44b4667:/# history
1 ls
2 diskutil list
这样就可以记录在容器输入过的命令了。
本站文章除注明转载外,均为本站原创或翻译,欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,共创和谐网络环境。
转载请注明:文章转载自:快速开发框架 » 数据共享与持久化
本文标题:数据共享与持久化
posted @ 2021-03-24 11:35  码上的飞鱼  阅读(30)  评论(0编辑  收藏  举报