Docker Volume (数据卷),用于保存持久化的数据,能够通过Docker Volume将数据保存在主机上(即将容器的文件目录与本地绑定,类似于共享文件夹)
FROM alpine
VOLUME ["/data"] # 使用 VOLUME
ENTRYPOINT ["/bin/sh"]
会在主机目录 /var/lib/docker/volumes/name/
下创建目录_data
可以通过检查容器来获取详细路径
docker container inspect -f "{{ json .Mounts }}" c2 | jq
使用 -v 选项定义
创建新卷docker volume create --name html
查看新卷docker volume ls
DRIVER VOLUME NAME
[other previously created volumes]
local html
检查卷docker volume inspect html
[
{
"Driver": "local",
"Labels": {},
"Mountpoint": "/var/lib/docker/volumes/html/_data",
"Name": "html", # Dockerfile创建的是随机名字
"Options": {},
"Scope": "local"
}
]
运行时绑定卷html到容器内的nginx web目录docker run -d -p 8080:80 -v html:/usr/share/nginx/html nginx
docker container run -v HOST_PATH:CONTAINER_PATH [OPTIONS] IMAGE [CMD]
如果容器内不存在挂载的文件夹,就会重新创建
,如果存在则会覆盖其内容