目录挂载
在执行run
时设置参数-v
即可实现目录映射, 实现原理会在宿主机器创建一个空文件夹
shell
# 挂载宿主机的 /data 目录到容器的 /app 目录
docker run -d -v /data:/app --name my-app my-image
# 挂载 docker 内的 /usr/share/nginx/html 目录到本地机的 /app/nghtml
docker run -d -v /app/nghtml:/usr/share/nginx/html my-nginx
卷映射
卷映射首先会从容器内部中所有文件映射到宿主机的位置, 通过制定卷的名字, 统一放在了/var/lib/docker/volumes/<volume-name>/_data
, 删除目录不会删除卷
shell
# 卷映射到宿主机
docker run -d -v ngconf:/etc/nginx my-nginx
# 从宿主机修改文件
vi /var/lib/docker/volumes/ngconf/_data/nginx.conf
# 列出所有的卷
docker volume ls
# 创建新的卷
docker volume create colume_name
# 查看卷详情
docker volume inspect ngconf