安阳网站建设兼职,企业电脑管理软件,网络资源管理系统,石家庄企业展厅设计公司Docker 持久化存储 Bind mounts Bind mounts 的 -v 与 --mount 区别启动容器基于bind mount挂载到容器中的非空目录只读 bind mountcompose 中使用 bind mount 官方文档#xff1a;https://docs.docker.com/storage/bind-mounts/ Bind mounts 的 -v 与 --mount 区别
如果使用… Docker 持久化存储 Bind mounts Bind mounts 的 -v 与 --mount 区别启动容器基于bind mount挂载到容器中的非空目录只读 bind mountcompose 中使用 bind mount 官方文档https://docs.docker.com/storage/bind-mounts/ Bind mounts 的 -v 与 --mount 区别
如果使用-v或--volume绑定挂载 Docker主机上尚不存在的文件或目录-v 将自动创建一个目录。如果使用--mount绑定挂载Docker主机上尚不存在的文件或目录Docker不会自动创建它而是会生成一个错误。 启动容器基于bind mount
启动容器基于 bind mount --mountdocker run -d \-it \--name devtest \--mount typebind,source$(pwd)/target,target/app \nginx:latest-vdocker run -d \-it \--name devtest \-v $(pwd)/target:/app \nginx:latest使用 docker inspect devtest 查看详情中的Mounts部分。Mounts: [{Type: bind,Source: /tmp/source/target,Destination: /app,Mode: ,RW: true,Propagation: rprivate}
],挂载到容器中的非空目录
如果将目录绑定挂载到容器上的非空目录中则绑定挂载会遮挡该目录的现有内容。益处在不构建新镜像的情况下测试应用程序的新版本。弊处如果将容器的 /usr 替换成主机上的 /tmp , 在大多数情况下会导致容器无法正常启动。 --mountdocker run -d \-it \--name broken-container \--mount typebind,source/tmp,target/usr \nginx:latestdocker: Error response from daemon: oci runtime error: container_linux.go:262:
starting container process caused exec: \nginx\: executable file not found in $PATH. -vdocker run -d \-it \--name broken-container \-v /tmp:/usr \nginx:latestdocker: Error response from daemon: oci runtime error: container_linux.go:262:
starting container process caused exec: \nginx\: executable file not found in $PATH.容器已经创建但是未启动用 docker container rm broken-container 删除。 只读 bind mount
创建 --mountdocker run -d \-it \--name devtest \--mount typebind,source$(pwd)/target,target/app,readonly \nginx:latest-vdocker run -d \-it \--name devtest \-v $(pwd)/target:/app:ro \nginx:latest用 docker inspect devtest 查看详情Mounts部分Mounts: [{Type: bind,Source: /tmp/source/target,Destination: /app,Mode: ro,RW: false,Propagation: rprivate}
],compose 中使用 bind mount
version: 3.9
services:frontend:image: node:ltsvolumes:- type: bindsource: ./statictarget: /opt/app/static
volumes:myapp: