Hello everyone, after updating Docker Desktop to version 4.35, the well-known problem with launching on Ubuntu 24.04 was solved. Unfortunately, I started to catch an error when starting a container to work with potsgres, although I did not have it before the update.
(HTTP code 500) server error - error while creating mount source path '/host_mnt/home/arthur/docker/postgres_data': mkdir /host_mnt/home/arthur/docker/postgres_data: file exists
I tried to create a backup copy of the postgres_data directory, and then delete it, then I got a similar error, which said that there are permission denied for create the directory
I also get an error when running via cli (see screenshot):
It looks like a bug, but I don’t use Docker Desktop on Linux so I can’t test it now. I can still recommend changing the bind mount to this long syntax for the postgres service
Since the long syntax doesn’t try to create the folder automatically. If something is wrong with the short syntax in the new version, this could work. If it doesn’t help, then I don’t know yet. The fact that it says “file exists” indicates the mkdir is executed when the source is already there. If the error message is correct, this is my best idea.
Did my recommendation work? Just now I got a strange error message on macOS which could be related. The difference in my case was that it said “operation not permitted” not “file exists”, but it seems to be the same root cause
Update:
In my case it happened because the process in the container didn’t have right to read the subfolder, sinne it was only for the owner. I only recognized it when I mounted the parent folder, but otherwise I got the “mkdir” error message with the “operation not permitted” so maybe it was no the same root cause after all.
But when I go to docker-desktop, I see that the container with postgres is stopped.
Then, for the experiment, I deleted my volume directory for postgres. And then the container started successful.
I repeat, everything was for an experiment, information about which may be useful in the future, and I do not consider the steps I described to be correct.
If Postgres stopped it probably had error messages in the container logs which could have helped, but the original mount issue is stil something I can’t explain. You can try to report it on GitHub too GitHub - docker/desktop-linux: Bug reports for Docker Desktop for Linux. Since setting the permissions to 777 solved the mount problem, maybe it is related to my issue. To be honest I don’t remember how it worked before. I think I mounted my Downloads folder in the past, but that issue could alos be caused by macOS. A simple postgres folder on Linux should be mountable.