数据卷类似于共享文件,宿主机和Docker容器,容器与容器,之间共享目录
1、Docker run命令 -v
-v 命令可以有多个
docker run -p 80:80 -v /data:/data -d nginx:latest
宿主机目录:Docker容器目录
docker run --name nginx -d -p 8080:80 -v c:/nginx:/nginxdata nginx
window for Docker c:/nginx目录跟Linux根目录下的nginxdata 映射
docker run -p 80:80 -v /data:/data:ro -d nginx:latest
## ro 指该容器对数据卷目录是只读的,但宿主机是可读写的
2.DockerFile创建:
简单示例:
# volume test
FROM centos
VOLUME ["dataVolumeContainer1","dataVolumeContainer2"]
CMD echo "success!!"
CMD /bin/bash
运行DockerFile,创建镜像:
docker build -t aspnetapp -f ./Docker.Sample/Dockerfile .
# -f Dockerfile路径
-t 镜像名称
使用该镜像运行容器:
docker run -d --name mycontainer -p 8888:5000 mycontainer
那么会根据DockerFile文件自动创建数据卷。