'Docker complains that bind source path doesn't exist, but it DOES
I'm trying to start a mysql container with a host directory mounted. I'm running a single-node swarm in Docker for AWS. But I can't mount a directory...
This is the section of the docker-compose file I'm using:
mysql:
image: mysql-custom
volumes:
- /mysql:/var/lib/mysql
ports:
- "3307:3306"
And this is the launch command I'm trying:
docker stack deploy --compose-file docker-compose.yml stack12
When I launch however, docker swarm rejects the image, saying "invalid mount config for type \"bind\": bind source path does not exist". However, /mysql is a valid directory, I can cd to it and everything, so why is docker saying it does not exist?
Solution 1:[1]
According to what you are trying, mysql needs to be in root directory. You can try this
mysql:
image: mysql-custom
volumes:
- ./mysql:/var/lib/mysql
ports:
- "3307:3306"
Notice the . before mysql. And directory structure for this can be:
.
|__docker-compose.yml
|__mysql
|__(Your content)
|__(some more files)
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Ayushya |
