Docker 抱怨绑定源路径不存在,但它确实存在

问题描述 投票:0回答:2

我正在尝试启动一个安装了主机目录的 mysql 容器。我正在 Docker for AWS 中运行单节点集群。但我无法挂载目录...

这是我正在使用的 docker-compose 文件的部分:

mysql:
    image: mysql-custom
    volumes:
        - /mysql:/var/lib/mysql
    ports:
        - "3307:3306"

这是我正在尝试的启动命令:

docker stack deploy --compose-file docker-compose.yml stack12

但是,当我启动时,docker swarm 拒绝了该映像,并表示“类型\“bind\”的安装配置无效:绑定源路径不存在”。然而,/mysql一个有效的目录,我可以cd到它和所有东西,那么为什么docker说它不存在呢?

docker docker-compose docker-swarm
2个回答
0
投票

根据您正在尝试的内容,

mysql
需要位于root目录中。你可以试试这个

mysql:
    image: mysql-custom
    volumes:
        - ./mysql:/var/lib/mysql
    ports:
        - "3307:3306"

注意

.
之前的
mysql
。其目录结构可以是:

.
|__docker-compose.yml
|__mysql
   |__(Your content)
   |__(some more files)

0
投票

由于权限问题,我也遇到了同样的问题。我建议您进行一个测试,将 777 授予 /mysql 以查看它是否有效 -> 然后调整权限以满足您的安全要求

© www.soinside.com 2019 - 2024. All rights reserved.