卷设备磁盘装载docker编写错误-不是目录
我需要使用docker compose安装一个磁盘 目前,我可以使用卷设备磁盘装载docker编写错误-不是目录,docker,docker-compose,Docker,Docker Compose,我需要使用docker compose安装一个磁盘 目前,我可以使用docker service create进行组装,方法如下: docker service create -d \ --name my-service \ -p 8888:80 \ --mount='type=volume,dst=/usr/local/apache2/htdocs,volume-driver=local,volume-opt=type=xfs,volume-opt=device=/dev/sdd' \
docker service create
进行组装,方法如下:
docker service create -d \
--name my-service \
-p 8888:80 \
--mount='type=volume,dst=/usr/local/apache2/htdocs,volume-driver=local,volume-opt=type=xfs,volume-opt=device=/dev/sdd' \
httpd
我的docker compose.yml
如下所示:
version: '3.8'
services:
my-service:
image: httpd
ports:
- '80:80'
volumes:
- type: volume
source: my-vol
target: /usr/local/apache2/htdocs
volumes:
my-vol:
driver: local
driver_opts:
type: xfs
o: bind
device: '/dev/sdd'
使用docker compose up
上传服务时,我收到错误信息:
"failed to mount local volume: mount /dev/sdd:/var/lib/docker/volumes/apache_my-vol/_data, flags: 0x1000: not a directory"
如何配置我的docker compose.yml
以装载磁盘
*对不起,我的英语不好。这一行与传递给普通Linuxmount(8)命令的选项相匹配
o:bind
手动创建一个绑定挂载,将文件系统的一部分附加到其他地方;这是Docker绑定安装系统背后的机械师。此处更改的重要内容是,它会导致将设备:
实际解释为要重新装载的(主机系统)目录,而不是设备
由于您正在尝试装载物理设备,因此不需要
o:bind
选项。如果删除该选项,则设备:
将被解释为设备名称,您将能够装载磁盘。o:bind
不适合尝试装载物理磁盘。移除它有帮助吗?是的,有帮助!非常感谢你,大卫!