-
Notifications
You must be signed in to change notification settings - Fork 124
Description
- I have tried with the latest version of Docker Desktop
- I have tried disabling enabled experimental features
- I have uploaded Diagnostics
- Diagnostics ID: DE42E1FF-5DD7-437F-9D40-847D8862DBE5/20220408200124
Expected behavior
Enabling VirtioFS and Big Sur Virtualization framework does not cause changes in container behavior outside of speed.
Actual behavior
Program in container fails to start successfully when it depends on files mounted in shared volume. PostgreSQL complains LOG: could not open file "pg_wal/000000010000000000000001": No such file or directory
and FATAL: could not open file "pg_wal/000000010000000000000001": No such file or directory
. Disabling virtiofs and experimental virtualization framework allows the container to start without issue.
Information
- macOS Version: macOS 12.3.1
- Intel chip or Apple chip: Apple M1 Pro
- Docker Desktop Version: 4.6.1
This may be a duplicate of #6219 or #6243, but I am not sure. I am trying to run a Postgres container using docker-compose up Postgres
, with this docker-compose file. This service is set to mount postgresql's data to the host's ./data/postgres
directory, enabling data persistence. When I run the container in a fresh directory without virtiofs and new virtualization framework, it starts just fine. However, if I try to start it from scratch with virtiofs enabled, it fails to start with the message above. I assume virtiofs is interfering with how long it takes for items to show up and be accessible once created. Please let me know if there is any additional information I can provide.
Output of /Applications/Docker.app/Contents/MacOS/com.docker.diagnose check
❯ /Applications/Docker.app/Contents/MacOS/com.docker.diagnose check
Starting diagnostics
[PASS] DD0027: is there available disk space on the host?
[PASS] DD0028: is there available VM disk space?
[PASS] DD0031: does the Docker API work?
[PASS] DD0004: is the Docker engine running?
[PASS] DD0011: are the LinuxKit services running?
[PASS] DD0016: is the LinuxKit VM running?
[PASS] DD0001: is the application running?
[PASS] DD0018: does the host support virtualization?
[PASS] DD0017: can a VM be started?
[PASS] DD0015: are the binary symlinks installed?
[PASS] DD0003: is the Docker CLI working?
[PASS] DD0013: is the $PATH ok?
[PASS] DD0007: is the backend responding?
[PASS] DD0014: are the backend processes running?
[PASS] DD0008: is the native API responding?
[PASS] DD0009: is the vpnkit API responding?
[PASS] DD0010: is the Docker API proxy responding?
[PASS] DD0012: is the VM networking working?
[PASS] DD0032: do Docker networks overlap with host IPs?
[SKIP] DD0030: is the image access management authorized?
[PASS] DD0019: is the com.docker.vmnetd process responding?
[PASS] DD0033: does the host have Internet access?
Steps to reproduce the behavior
- Enable virtiofs
- mkdir ~/cs143
- cd ~/cs143
- mkdir ~/cs143_shared
wget curl https://gist.githubusercontent.com/TylerADavis/d1fb104553740bd6b48ea2bdadd6a59d/raw/adcf9d667d5a0c9a51a243be609644d46007a546/docker-compose.yml > docker-compose.yml
- docker-compose up Postgres
- Observe error message
- Disable virtiofs
- observe that
docker-compose up postgres
runs without issue