绑定挂载管理
Docker 绑定挂载(Bind Mount)是一种将主机文件系统中的目录或文件直接挂载到容器中的方法。与 Docker 卷(Volume)不同,绑定挂载使用主机文件系统的绝对路径,而不是由 Docker 管理的存储。
绑定挂载的特点
- 直接访问主机文件系统:绑定挂载允许容器直接访问主机上的文件或目录。
- 灵活性:可以挂载单个文件或整个目录。
- 性能:由于直接访问主机文件系统,性能通常较好。
- 持久化:数据存储在主机上,即使容器被删除,数据仍然存在。
使用绑定挂载
在运行容器时,可以通过 -v
或 --mount
参数来指定绑定挂载。
使用 -v
参数
docker run -v /host/path:/container/path my-image
/host/path
:主机上的路径。/container/path
:容器内的路径。
使用 --mount
参数
docker run --mount type=bind,source=/host/path,target=/container/path my-image
type=bind
:指定挂载类型为绑定挂载。source=/host/path
:主机上的路径。target=/container/path
:容器内的路径。
注意事项
- 路径存在性:主机上的路径必须存在,否则 Docker 会报错。
- 权限问题:容器内的进程将以容器的用户身份访问挂载的文件或目录,因此需要注意文件权限。