docker 容器与主机共享文件

方法一

[root@localhost ~]# docker run -p 7777:80 -dit --name test2 -v /demo/data/:/data nginx
9fd0815fc8028254d8f0a4f58b49b307899c7cd00da961d3b621d696a920f13f

查看容器对象信息

source:是主机的文件位置

destination:是容器的文件位置

[root@localhost data]# docker inspect test2
[
        "Mounts": [
            {
                "Type": "bind",
                "Source": "/demo/data",
                "Destination": "/data",
                "Mode": "",
                "RW": true,
                "Propagation": "rprivate"
            }
        
]

设置主机分享给容器的文件只读,只需要在后面加上:ro即可(Read-only)

[root@localhost usr]# docker run -p 9999:80 -v /demo/test:/test/:ro -dit --name test nginx

 

方法二(数据卷)

创建

docker volume create 数据卷名

基本查看

docker volume ls

查看僵尸数据卷(也就是没用的数据眷顾)

docker volume ls -qf dangling=true

查看具体信息

注:Mountpoint为数据在本机存储的位置,如果磁盘存储空间不足可修改此位置

docker volume inspect 数据卷名

挂载

docker run -d -v 数据卷名:docker目录 镜像名

正常删除(容器正在使用的数据卷是不能被删除的,如果确定不用,可以把容器删除了,在删除数据卷)

docker volume rm 数据卷名

删除僵尸数据卷(删除没有在用的数据卷)

docker volume rm $(docker volume ls -qf dangling=true)

你可能感兴趣的:(docker)