Kitematic: Kitematic - VirtualBox is not installed. Docker for windows 10

Created on 24 Mar 2017  ·  41Comments  ·  Source: docker/kitematic

Docker for Windows
Windows10

Expected behavior

Kitematic should display GUI to create, run and manage my containers.

Actual behavior

An error occured and I cannot control my containers.

There seems to have been an unexpected error with Kitematic:
VirtualBox is not installed. Please install it via the Docker Toolbox.
kitematic

Information about the Issue

When I used Kitematic first time, it worked perfectly and I enjoyed Docker for a few days.
I used Linux containers then,
but one day I pushed "Switch to Windows containers..." by mistake.
However I swiched to Linux containers immediately, Kitematic doesn't work after that.

Docker itself can work perfectly and I can use docker command.
Hyper-v on Windows10 is active too.
Please tell me what I need to do.

Steps to reproduce the behavior

  1. ...Right click the docker icon in task bar
  2. ...Select "Kitematic"

Most helpful comment

I had this same problem too.
THE FIX FOR WINDOWS IS to delete the contents of C:\Users\myuser\AppData\Roaming\Kitematic\Local Storage

All 41 comments

Switching from linux or windows containers shouldn't have affected Kitematic the way you show it here.
There's a good chance that a different screen was shown before this one, where you selected a different option than the native route and why you're now seeing the Virtualbox install screen.

I'm working on a PR to have a 'reset' button in order to roll back any previous settings. For now you can open the Developer Console and run the following command: localStorage.removeItem('settings')

I got the same issue. how can i solve it? i re-installed the Docker for Windows and Kitematic. it still the issue

@tomcsharp use the above fix.

@FrenchBen
I have no idea what Developer Console you mean.
I have the same issue on Mac OS.
Could you please explain how to reset Kitematic settings?

@FrenchBen
Maybe you meant this one?
screen shot 2017-04-12 at 19 15 47

This command changes nothing.

@laptevn yes that was the one.

@FrenchBen But for me this command changes nothing.
Do I need to do something else?

I have no idea what Developer Console you mean?
How can i open the Developer Console in Docker for Windows?

@tomcsharp
I found that under View->Toggle Chromium Developer Tools, then you need to click Console tab there.
But the command @FrenchBen suggested doesn't change anything for me (settings are not reset).

@laptevn Do you have Docker for Windows installed, it should detect it - How did you get Kitematic?
Can you do docker version from PowerShell?

@laptevn ,@FrenchBen, I have the issue on Docker for Windows. I can not found the menu (View->Toggle Chromium ).

@FrenchBen
As I mentioned I use Mac OS and Docker for Mac. The problem is actual for both Stable and Edge versions. Both are the latest available now.
For example version details of Edge:
MacBook-Pro:~ nickolay$ docker version
Client:
Version: 17.04.0-ce
API version: 1.28
Go version: go1.7.5
Git commit: 4845c56
Built: Wed Apr 5 06:06:36 2017
OS/Arch: darwin/amd64

Server:
Version: 17.04.0-ce
API version: 1.28 (minimum version 1.12)
Go version: go1.7.5
Git commit: 4845c56
Built: Tue Apr 4 00:37:25 2017
OS/Arch: linux/amd64
Experimental: true

How did you get Kitematic?

I tried different versions of Kitematic - link from Docker->Kitematic command and from GitHub repo (that was released by you).
Both have this issue.
The one from GitHub was released after your comment "I'm working on a PR to have a 'reset' button".

@laptevn the reset is exactly what you did in the web console.
The original issue was with regards to Windows and switching to windows containers, hence my questions.

@laptevn what you do you get if you issue the following in the web console:
localStorage.getItem('settings.useVM')

Also can you paste the output of:

curl --unix-socket /var/run/docker.sock http://1.26/info

@FrenchBen
localStorage.getItem('settings.useVM')
"true"

MacBook-Pro:~ nickolay$ curl --unix-socket /var/run/docker.sock http://1.26/info {"ID":"M4HJ:PWXS:B5RS:D6ER:6RFP:RKML:DHI3:ITYJ:NC5W:VGO4:EBD5:PVUH","Containers":0,"ContainersRunning":0,"ContainersPaused":0,"ContainersStopped":0,"Images":12,"Driver":"overlay2","DriverStatus":[["Backing Filesystem","extfs"],["Supports d_type","true"],["Native Overlay Diff","true"]],"SystemStatus":null,"Plugins":{"Volume":["local"],"Network":["bridge","host","ipvlan","macvlan","null","overlay"],"Authorization":[]},"MemoryLimit":true,"SwapLimit":true,"KernelMemory":true,"CpuCfsPeriod":true,"CpuCfsQuota":true,"CPUShares":true,"CPUSet":true,"IPv4Forwarding":true,"BridgeNfIptables":true,"BridgeNfIp6tables":true,"Debug":true,"NFd":16,"OomKillDisable":true,"NGoroutines":26,"SystemTime":"2017-04-14T18:53:25.965441617Z","LoggingDriver":"json-file","CgroupDriver":"cgroupfs","NEventsListener":1,"KernelVersion":"4.9.19-moby","OperatingSystem":"Alpine Linux v3.5","OSType":"linux","Architecture":"x86_64","IndexServerAddress":"https://index.docker.io/v1/","RegistryConfig":{"InsecureRegistryCIDRs":["127.0.0.0/8"],"IndexConfigs":{"docker.io":{"Name":"docker.io","Mirrors":[],"Secure":true,"Official":true}},"Mirrors":[]},"NCPU":2,"MemTotal":2096181248,"DockerRootDir":"/var/lib/docker","HttpProxy":"","HttpsProxy":"","NoProxy":"*.local, 169.254/16","Name":"moby","Labels":null,"ExperimentalBuild":true,"ServerVersion":"17.04.0-ce","ClusterStore":"","ClusterAdvertise":"","Runtimes":{"runc":{"path":"docker-runc"}},"DefaultRuntime":"runc","Swarm":{"NodeID":"","NodeAddr":"","LocalNodeState":"inactive","ControlAvailable":false,"Error":"","RemoteManagers":null,"Nodes":0,"Managers":0,"Cluster":{"ID":"","Version":{},"CreatedAt":"0001-01-01T00:00:00Z","UpdatedAt":"0001-01-01T00:00:00Z","Spec":{"Labels":null,"Orchestration":{},"Raft":{"ElectionTick":0,"HeartbeatTick":0},"Dispatcher":{},"CAConfig":{},"TaskDefaults":{},"EncryptionConfig":{"AutoLockManagers":false}}}},"LiveRestoreEnabled":false,"Isolation":"","InitBinary":"","ContainerdCommit":{"ID":"422e31ce907fd9c3833a38d7b8fdd023e5a76e73","Expected":"422e31ce907fd9c3833a38d7b8fdd023e5a76e73"},"RuncCommit":{"ID":"9c2d8d184e5da67c95d601382adf14862e4f2228","Expected":"9c2d8d184e5da67c95d601382adf14862e4f2228"},"InitCommit":{"ID":"949e6fa","Expected":"949e6fa"},"SecurityOptions":["name=seccomp,profile=default"]}

@laptevn the fact that localStorage.getItem('settings.useVM') comes back as true shows why you're not seeing the proper screen.
Run: localStorage.setItem('settings.useVM', 'false')

@FrenchBen
It works. Thanks!

Maybe it makes sense to document this workaround somewhere.

@tomcsharp try 'Ctrl + Alt + I'

I had the same issue on Mac OS after restart. Docker version Version 17.03.1-ce-mac5 (16048)
Solved by localStorage.setItem('settings.useVM', 'false')

Thank you for explanation in this topic.

https://github.com/docker/kitematic/pull/2635 will fix this, by providing a new reset link

The developer console commands didn't fix it for me, but removing ~/Library/Application Support/Kitematic/Local Storage and restarting the application did. I'm not sure what the equivalent path is for Windows/Linux.

C:\Users\myuser\AppData\Roaming\Kitematic\Local Storage is path for windows

I had the same issue on Windows with the native Hyper-V install, and the reset button didn't work for me. I followed the directions here by doing 'Ctrl + Alt + I' which brought up the chrome console, then running localStorage.setItem('settings.useVM', 'false') and restarting and it now works. Curious if the reset button would have worked if it integrated a restart of the application?

I had this same problem too.
THE FIX FOR WINDOWS IS to delete the contents of C:\Users\myuser\AppData\Roaming\Kitematic\Local Storage

localStorage.setItem('settings.useVM', 'false') worked for me on Windows 10.

Why is this issue closed?

Changing settings.useVM is the only way to make it work. Isn't the the red reset button supposed to solve the issue and give the option to go for 'native' docker?

@geoffroy-noel-ddh the reset closed this issue, as it should set everything back to normal. If you experienced otherwise, please share what the setting of settings.useVM was before you forcibly set it to false.

I had to delete the folder in ~/Library/Application Support/Kitematic/Local Storage to solve the issue.

The reset button does nothing. Need to delete the folder. I do not know what the reset button is for, but doing nothing seems the only thing it did.

@FrenchBen
Thanks!
This localStorage.setItem('settings.useVM', 'false') do solve the problem, though I have no idea why it appears.

  1. Ctrl+Alt+I (Thanks to @anoChick )
  2. Find "Resources" tab
  3. Click Local storage
  4. Click file://
  5. Delete all the keys.

Above steps worked for me.

image

Oh man, been stuck trying to fix this for HOURS thanks for the "Ctrl+Alt+I" information @fs1989 / @anoChick -- I had to delete "settings.useVM" which reset did not remove.

@FrenchBen
I'm getting this error -

Command failed: /usr/local/bin/docker-machine -D create -d virtualbox --virtualbox-memory 2048 default,Docker Machine Version: 0.13.0, build 9ba6da9,Found binary path at /usr/local/bin/docker-machine,Launching plugin server for driver virtualbox,Plugin server listening at address 127.0.0.1:52412,() Calling .GetVersion,Using API Version 1,() Calling .SetConfigRaw,() Calling .GetMachineName,(flag-lookup) Calling .GetMachineName,(flag-lookup) Calling .DriverName,(flag-lookup) Calling .GetCreateFlags,Found binary path at /usr/local/bin/docker-machine,Launching plugin server for driver virtualbox,Plugin server listening at address 127.0.0.1:52416,() Calling .GetVersion,Using API Version 1,() Calling .SetConfigRaw,() Calling .GetMachineName,(default) Calling .GetMachineName,(default) Calling .DriverName,(default) Calling .GetCreateFlags,(default) Calling .SetConfigFromFlags,(default) Calling .PreCreateCheck,(default) DBG | COMMAND: /usr/local/bin/VBoxManage --version,(default) DBG | STDOUT:,(default) DBG | {,(default) DBG | 5.2.4r119785,(default) DBG | },(default) DBG | STDERR:,(default) DBG | {,(default) DBG | },(default) DBG | local Boot2Docker ISO version: v18.01.0-ce,(default) DBG | COMMAND: /usr/local/bin/VBoxManage list hostonlyifs,(default) DBG | STDOUT:,(default) DBG | {,(default) DBG | Name: vboxnet0,(default) DBG | GUID: 786f6276-656e-4074-8000-0a0027000000,(default) DBG | DHCP: Disabled,(default) DBG | IPAddress: 192.168.99.1,(default) DBG | NetworkMask: 255.255.255.0,(default) DBG | IPV6Address: ,(default) DBG | IPV6NetworkMaskPrefixLength: 0,(default) DBG | HardwareAddress: 0a:00:27:00:00:00,(default) DBG | MediumType: Ethernet,(default) DBG | Wireless: No,(default) DBG | Status: Up,(default) DBG | VBoxNetworkName: HostInterfaceNetworking-vboxnet0,(default) DBG | ,(default) DBG | },(default) DBG | STDERR:,(default) DBG | {,(default) DBG | },(default) Calling .GetConfigRaw,(default) Calling .Create,(default) DBG | local Boot2Docker ISO version: v18.01.0-ce,(default) DBG | Creating disk image...,(default) DBG | Creating 20000 MB hard disk image...,(default) DBG | Writing magic tar header,(default) DBG | Writing SSH key tar header,(default) DBG | Calling inner createDiskImage,(default) DBG | &{/usr/local/bin/VBoxManage [/usr/local/bin/VBoxManage convertfromraw stdin /Users/jamesxue/.docker/machine/machines/default/disk.vmdk 20971520000 --format VMDK] [] [] false [] [] [] [] },(default) DBG | Starting command,(default) DBG | Copying to stdin,(default) DBG | Filling zeroes,(default) DBG | Converting from raw image file="stdin" to file="/Users/jamesxue/.docker/machine/machines/default/disk.vmdk"...,(default) DBG | Creating dynamic image with size 20971520000 bytes (20000MB)...,(default) DBG | Closing STDIN,(default) DBG | Waiting on cmd,(default) DBG | COMMAND: /usr/local/bin/VBoxManage createvm --basefolder /Users/jamesxue/.docker/machine/machines/default --name default --register,(default) DBG | STDOUT:,(default) DBG | {,(default) DBG | Virtual machine 'default' is created and registered.,(default) DBG | UUID: 2e3eb02e-ff60-4f76-b80b-3c13fbc33cbb,(default) DBG | Settings file: '/Users/jamesxue/.docker/machine/machines/default/default/default.vbox',(default) DBG | },(default) DBG | STDERR:,(default) DBG | {,(default) DBG | },(default) DBG | VM CPUS: 1,(default) DBG | VM Memory: 2048,(default) DBG | COMMAND: /usr/local/bin/VBoxManage modifyvm default --firmware bios --bioslogofadein off --bioslogofadeout off --bioslogodisplaytime 0 --biosbootmenu disabled --ostype Linux26_64 --cpus 1 --memory 2048 --acpi on --ioapic on --rtcuseutc on --natdnshostresolver1 off --natdnsproxy1 on --cpuhotplug off --pae on --hpet on --hwvirtex on --nestedpaging on --largepages on --vtxvpid on --accelerate3d off --boot1 dvd,(default) DBG | STDOUT:,(default) DBG | {,(default) DBG | },(default) DBG | STDERR:,(default) DBG | {,(default) DBG | VBoxManage: error: The machine 'default' is already locked for a session (or being unlocked),(default) DBG | VBoxManage: error: Details: code VBOX_E_INVALID_OBJECT_STATE (0x80bb0007), component MachineWrap, interface IMachine, callee nsISupports,(default) DBG | VBoxManage: error: Context: "LockMachine(a->session, LockType_Write)" at line 519 of file VBoxManageModifyVM.cpp,(default) DBG | },Error creating machine: Error in driver during machine creation: /usr/local/bin/VBoxManage modifyvm default --firmware bios --bioslogofadein off --bioslogofadeout off --bioslogodisplaytime 0 --biosbootmenu disabled --ostype Linux26_64 --cpus 1 --memory 2048 --acpi on --ioapic on --rtcuseutc on --natdnshostresolver1 off --natdnsproxy1 on --cpuhotplug off --pae on --hpet on --hwvirtex on --nestedpaging on --largepages on --vtxvpid on --accelerate3d off --boot1 dvd failed:,VBoxManage: error: The machine 'default' is already locked for a session (or being unlocked),VBoxManage: error: Details: code VBOX_E_INVALID_OBJECT_STATE (0x80bb0007), component MachineWrap, interface IMachine, callee nsISupports,VBoxManage: error: Context: "LockMachine(a->session, LockType_Write)" at line 519 of file VBoxManageModifyVM.cpp,,open /Users/jamesxue/.docker/machine/machines/default/default/Logs/VBox.log: no such file or directory,notifying bugsnag: [Error creating machine: Error in driver during machine creation: /usr/local/bin/VBoxManage modifyvm default --firmware bios --bioslogofadein off --bioslogofadeout off --bioslogodisplaytime 0 --biosbootmenu disabled --ostype Linux26_64 --cpus 1 --memory 2048 --acpi on --ioapic on --rtcuseutc on --natdnshostresolver1 off --natdnsproxy1 on --cpuhotplug off --pae on --hpet on --hwvirtex on --nestedpaging on --largepages on --vtxvpid on --accelerate3d off --boot1 dvd failed:,VBoxManage: error: The machine 'default' is already locked for a session (or being unlocked),VBoxManage: error: Details: code VBOX_E_INVALID_OBJECT_STATE (0x80bb0007), component MachineWrap, interface IMachine, callee nsISupports,VBoxManage: error: Context: "LockMachine(a->session, LockType_Write)" at line 519 of file VBoxManageModifyVM.cpp,],

Typing curl --unix-socket /var/run/docker.sock http://1.26/info gives me this -

{"ID":"A32S:SS2O:VEBQ:U6GT:EX6O:SZRM:ZUIO:ZEMR:QWTO:ELYB:JJ5F:COWT","Containers":0,"ContainersRunning":0,"ContainersPaused":0,"ContainersStopped":0,"Images":0,"Driver":"overlay2","DriverStatus":[["Backing Filesystem","extfs"],["Supports d_type","true"],["Native Overlay Diff","true"]],"SystemStatus":null,"Plugins":{"Volume":["local"],"Network":["bridge","host","ipvlan","macvlan","null","overlay"],"Authorization":null,"Log":["awslogs","fluentd","gcplogs","gelf","journald","json-file","logentries","splunk","syslog"]},"MemoryLimit":true,"SwapLimit":true,"KernelMemory":true,"CpuCfsPeriod":true,"CpuCfsQuota":true,"CPUShares":true,"CPUSet":true,"IPv4Forwarding":true,"BridgeNfIptables":true,"BridgeNfIp6tables":true,"Debug":true,"NFd":21,"OomKillDisable":true,"NGoroutines":39,"SystemTime":"2018-01-15T15:16:21.999269179Z","LoggingDriver":"json-file","CgroupDriver":"cgroupfs","NEventsListener":2,"KernelVersion":"4.9.60-linuxkit-aufs","OperatingSystem":"Docker for Mac","OSType":"linux","Architecture":"x86_64","IndexServerAddress":"https://index.docker.io/v1/","RegistryConfig":{"AllowNondistributableArtifactsCIDRs":[],"AllowNondistributableArtifactsHostnames":[],"InsecureRegistryCIDRs":["127.0.0.0/8"],"IndexConfigs":{"docker.io":{"Name":"docker.io","Mirrors":[],"Secure":true,"Official":true}},"Mirrors":[]},"NCPU":2,"MemTotal":2096103424,"GenericResources":null,"DockerRootDir":"/var/lib/docker","HttpProxy":"docker.for.mac.http.internal:3128","HttpsProxy":"docker.for.mac.http.internal:3129","NoProxy":"","Name":"linuxkit-025000000001","Labels":[],"ExperimentalBuild":true,"ServerVersion":"17.12.0-ce","ClusterStore":"","ClusterAdvertise":"","Runtimes":{"runc":{"path":"docker-runc"}},"DefaultRuntime":"runc","Swarm":{"NodeID":"","NodeAddr":"","LocalNodeState":"inactive","ControlAvailable":false,"Error":"","RemoteManagers":null},"LiveRestoreEnabled":false,"Isolation":"","InitBinary":"docker-init","ContainerdCommit":{"ID":"89623f28b87a6004d4b785663257362d1658a729","Expected":"89623f28b87a6004d4b785663257362d1658a729"},"RuncCommit":{"ID":"b2567b37d7b75eb4cf325b77297b140ea686ce8f","Expected":"b2567b37d7b75eb4cf325b77297b140ea686ce8f"},"InitCommit":{"ID":"949e6fa","Expected":"949e6fa"},"SecurityOptions":["name=seccomp,profile=default"]}

Still occurring with Docker Edge 18.0ce & Kitematic 17.0.2 on Win10.
Only way to fix it is deleting contents of AppData\Roaming\Kitematic\Local Storage

Reset button restarts attempting the VirtualBox method

@FrenchBen Thanks, I fixed my Kitematic issue follow your guide

@jmiroche Thanks, works for me!

Hey, I have the same error on Mac High Sierra 10.13.3. Anyone where I can find the local storage folder for Kitematic in macos?

Apparently this error wasn't fixed about over 9 months.
It is still there on the latest Docker-kitematic under Mac OS High Sierra 10.13.4.
Giving the console command localStorage.setItem('settings.useVM', 'false') under the Chromium dev tools still does the trick.

Same problem here. In fact, I don't understand the Chrome console fix. Does Docker depend on the V8 engine ? Anyway, my issue seemed to pertain to Virtual Box. I installed the most recent version of VB and restarted. No different. Here's some useful information -- this problem only occurs when working on my PC's user account, where I do almost all coding and surfing. When I do it on admin account, no problem - straight through to my docker login and away. This sort of thing can happen with some apps. Maybe somewhere back along the installation process I did not configure it to cover all users on the network or something. But I don't recall seeing this option. Any ideas ?

For Mac Users:
In Terminal
rm -rf ~/Library/Application\ Support/Kitematic/Local\ Storage/

Then kill all processes of Kitematic:
(Manually or use following command)
kill $(ps aux | grep '.*Kitematic.*' | awk '{print $2}')

Restart Kitematic and select "New Setup"

这个操作是可行的,nice!

 localStorage.setItem('settings.useVM', 'false')

If you want reset kitematic-windows delete the content of this folder
C:\Users\myuser\AppData\Roaming\Kitematic\Local Storage is path for windows
this work's the load kitematic and ok should run ok....

Was this page helpful?
0 / 5 - 0 ratings