目录
1. 容器数据卷
- 场景:容器之间的共享和持久存在,这里存在挂载操作,本人觉得非常实用;
- 挂载:挂载到本地的容器卷上。
1.1 容器卷的概念
容器之间可以数据共享,不单单只存在于容器当中,删除了容器就好比"删库跑路"了一样,数据无法持久化;
-
实现挂载原理:
但是容器之间可以有一个数据共享的技术,docker容器中产生的数据,同步到本地;
这个就是卷技术,比如说目录挂载:将容器内的目录,挂载到本地上,实现容器间的数据共享;
1.2 容器卷的使用
挂载作用:我在容器中创建的文件,它会被同步到容器外面,同时我在容器外创建的文件或者是修改的文件也会被同步到容器内;
docker挂载常用命令表格:
序号 | 命令类型 | 命令格式 |
---|---|---|
1 | 挂载本地目录 | docker run -it -v 主机目录:容器内目录 |
2 | 挂载本地目录(只读) | docker run -it -v 主机目录:容器内目录:ro |
3 | 使用--mount选项挂载 | docker run -it --mount type=bind,source=主机目录,target=容器内目录 |
4 | 使用--mount选项(只读) | docker run -it --mount type=bind,source=主机目录,target=容器内目录,readonly |
5 | 挂载Docker数据卷 | docker run -it -v 数据卷名:容器内目录 |
6 | 使用--mount挂载数据卷 | docker run -it --mount source=数据卷名,target=容器内目录 |
7 | 查看容器信息 | docker inspect 容器ID |
序号 | 说明 | 示例 |
---|---|---|
1 | 将主机目录挂载到容器内目录 | docker run -it -v /home/ceshi:/home centos /bin/bash |
2 | 以只读方式挂载主机目录到容器内目录 | docker run -it -v /home/ceshi:/home:ro centos /bin/bash |
3 | 使用--mount 选项挂载主机目录到容器内目录 |
docker run -it --mount type=bind,source=/home/ceshi,target=/home centos /bin/bash |
4 | 使用--mount 选项以只读方式挂载主机目录 |
docker run -it --mount type=bind,source=/home/ceshi,target=/home,readonly centos /bin/bash |
5 |