Docker for Windows under Parallels - "unable to remove from the database"

Expected behavior

Docker starts

Actual behavior

Docker fails to start with the error "Unable to remove from the database. Exit Code 1"
Crash Ref ID: C9967611-5526-425A-A89A-A5B48822D766/2016-07-08_11-43-41

Information

Trying to run Docker for Windows on Windows 10 that is running under Parallels on a MacBook Pro. The following is a partial dump of the log - appears to be network related; I’ve disabled the firewall on both Windows and OSX. Docker for Windows was updated to the latest build - that seemed to work but still wouldn’t start.

2016/07/08 12:18:59 Failed to contact the database on \.\pipe\dockerDataBase: open \.\pipe\dockerDataBase: The system cannot find the file specified.

[12:18:59.318][NamedPipeServer][Error ] Unable to execute Start: Unable to remove from the database. Exit code: 1 at Docker.Backend.Database.RemoveKeys(IList`1 keys)
at Docker.Backend.Database.TryWrite(Settings settings)
at Docker.Backend.Database.Write(Settings settings)
at Docker.Backend.Backend.Start(Settings settings)
at Docker.Core.Pipe.NamedPipeServer.<>c__DisplayClass7_0.b__0(Object[] parameters)
at Docker.Core.Pipe.NamedPipeServer.RunAction(String action, Object[] parameters)
[12:18:59.323][NamedPipeClient][Error ] Unable to send Start: Unable to remove from the database. Exit code: 1

Steps to reproduce the behavior

  1. Install Docker for Windows on Windows 10 running under Parallels 11 running on OSX 10.11.5
  2. Note that Docker does not start and instead produces the above error.
2 Likes

Same issue occurs for me on Mac running Windows in Parrallels. Log files have hyperV errors:

[08:26:40.232][DataKit ][Info ] Failed to set up server socket listening on “hyperv-connect://3daa9613-b759-4931-b501-e30c3eaeadf9”: Unix.Unix_error(Unix.ENETDOWN,

Only workaround I’ve found is to run Docker for Mac

As test on parallel with docker 1.12 stable version this problem still exist.

[09:57:23.733][DataKit ][Info ] +10091us Datakit Starting com.docker.db.exe 16bb469 …
[09:57:23.752][DataKit ][Info ] Failed to set up server socket listening on “hyperv-connect://48816f6f-5158-48ce-9c08-249254f71597”: Unix.Unix_error(Unix.ENETDOWN, “socket”, “”)
[09:57:23.774][PowerShell ][Info ] Run script…
[09:57:23.781][DataKit ][Info ] Restarting…

Upgrading to parallels 11.2.1 fixed this for me!

I have the same issue on Parallels 10

Can you check whether the Hyper-V VM (named MobyLinuxVM) is setup and running? I suspect that this might be a problem with nested virtualization not functioning inside some versions of Parallels.

Upgrading to parallels 11.2.1 fixed this for me! They have an fix for exactly that (nested virtualization) in their changelog.

I’ve been working around the issue by running the Docker for Mac host. This does present some additional challenges though when wanting to “talk” to the container from Visual Studio running on Windows under Parallels. If I can get that working smoothly I think this will be a more performant solution than Docker under Windows under Parallels.

I’m on 11.2.1 but I still got the error. Is there anything particular you had to configure to get it working?

Make sure nested virtualization is enabled.