Closed davidthewatson closed 9 years ago
David,
I had this problem as well in the past. Not 100% sure of how I overcame it, but I believe it was by uninstalling boot2docker and Virtualbox completely and then download and reinstall Virtualbox myself.
YMMV ;)
FYI: I just installed Kitematic on a brand new MacBook Pro last night, and downloading Virtualbox was slow (as in so slow I could not take it) so I installed VB manually and then everything was smooth sailing.
Same problem here I tried the reinstall of Virtualbox and it gives me this error:
/Applications/Kitematic (Beta).app/Contents/Resources/app/resources/docker-machine-0.2.0 create -d virtualbox --virtualbox-memory 2048 dev returned non zero exit code stdout:time="2015-04-17T14:44:10-07:00" level="info" msg="Creating SSH key..." time="2015-04-17T14:44:11-07:00" level="info" msg="Creating VirtualBox VM..." time="2015-04-17T14:44:16-07:00" level="error" msg="Error creating machine: exit status 1" time="2015-04-17T14:44:16-07:00" level="warning" msg="You will want to check the provider to make sure the machine and associated resources were properly removed." time="2015-04-17T14:44:16-07:00" level="fatal" msg="Error creating machine" stderr:
add this line to your /etc/hosts
file
127.0.0.1 localhost
This fixed the problem for me. Got this from a similar issue on the boot2docker repo.
I'm having this issue as well. It seems it can't connect to the virtual box after installation. Eventually I get an error message that I will relay here.
This is still happening in the latest version of Kitematic (.5.19)
Typically, I'm getting the cannot connect error, where it gives you a 192. IP address connection error.
Note that it always works after a clean installation. Where I run into issues is after I quit the app, change locations, maybe come back in a day (presumably with a new IP) ... then it refuses to start.
It's like it's somehow stuck in the original state and will not work again if your environment or ip changes. Perhaps there's something getting shoved into an ENV variable that's not being cleaned on startup?
We're trying to make the switch from raw docker to kitematic at our organization, and this is a blocker for about 1/2 of the group. Any assistance or solution would go a long way.
Do you have vpn or other networking re-routing in place? These have been interfering with boot2docker. I'm experiencing the same issue but have not been able to do a clean install while not on the vpn.
I'm not on VPN, but we do have enterprise WPA2 with a radius server. I don't think that would be an issue in this case.
David Watson http://davidwatson.org/
On Wed, Apr 22, 2015 at 4:14 PM, Derrek notifications@github.com wrote:
Do you have vpn or other networking re-routing in place? These have been interfering with boot2docker. I'm experiencing the same issue but have not been able to do a clean install while not on the vpn.
— Reply to this email directly or view it on GitHub https://github.com/kitematic/kitematic/issues/386#issuecomment-95323251.
My corporate network is the same setup as what David describes.
To document the last 12 hours ....
Fast forward about 6 hours ...
Went home, where I was off the company network and on my own. Fired up Kitematic, and it booted up just fine, and I was able to interact with the container just fine.
6 hours later and I'm now back in the office, where I'm back on the original network and of course have a new IP number ...
I was on this screen for about 20 minutes:
Then, it finally failed with this:
Once the system is in this state, it is basically dead in the water. The only way to get working again is to do the full system clean (I've actually created a shell script do do this because I have to do it so often!) and re-install. Not a good workflow :(
Clearly, there is something up with the way Kitematic does its internal networking with the container VM. I can't imagine why it gives a rip about what network my machine is on. Isn't the whole point of this that its basically a little loopback network between docker and the VM that should be totally independent of whatever network the machine is running on?
Is there a log file somewhere that I can post to give more information to the kitematic crew?
And by "Dead in the water", what I mean is that if you click the "Delete VM and Retry Setup", you get this work of art:
You can click that button again, which leads you to the 99% ... wash. rinse. repeat.
This last error is the same error I got. But I have been able to resolve it. I had to completely remove VirtualBox and boot2docker from my system. VirtualBox installation package has a tool to do that (you may need to kill running VBox items, it will warn you). boot2docker I googled how to wipe it from my system. Then I restarted. I made sure all vboxnet adapters were still gone with ifconfig. I then let kitematic do a fresh install itself. After that it worked (I do believe I had to delete the VM and retry Setup once though).
I can now use it with my VPN on. I think because it switched local IP's for the vboxnet adapters. But, either way, it is working for me.
We have several people in our organization with the same issue. 2 of them have done fresh installs on basically new macbooks, so there was nothing previous to get in the way.
What's the required magic to make vboxnet adapters use local IPs?
don't know. when I did my fresh install with all previous installations removed, the standard IP it used switched from the .3 to some other local IP. And it didn't have issues with my VPN.
Unfortunately, I already switched back to boot2docker without kitematic because accessing the underlying VM became annoying, and the UI didn't seem to support advanced things I needed. (I couldn't figure out how to provide more parameters like linking containers and dns parameters... etc).
I didn't have time to figure those things out so I just removed everything again and went back to boot2docker alone.
I've got to spin up about 50 people on docker, and about 4 them understand what the terminal is. Getting them through a boot2docker installation and all the command line jazz will be the death of me.
Anyone from Kitematic following along? This is a pretty major blocker.
@johncokos @dleute @davidthewatson sorry that I'm late on the thread. Thanks for the discussion. Very helpful!
Would anyone mind sharing their routing table netstat -r
after running into the connect error?
My guess here is this is the same thing as https://github.com/boot2docker/boot2docker/issues/392. The VPNs route data through the VPN instead of the the Docker host.
@johncokos do you have the full message for the 2nd error in the screenshot?
I don't have anything that helps anymore because I have a working system without kitematic. But if I try kitematic again soon (which is very likely, because I like it a lot) I will provide it.
@dleute thanks so much, and sorry it wasn't working. Stay tuned for some more advanced features!
Oh I will. I'm a power user that prefers a gui. But, one thing I will say, is I would love if there was a one click way to give me the docker command based on all the inputs it saves. Ultimately, I needed to go back to the prompt to do things (or put the command in jenkins or somewhere else). having it generate that for me would be very nice (once it can support all docker flags in some way)
Right now, being able to pass random commands like we can environment variables would be fantastic. I don't need special support for linking, just the ability to add more parameters to the run/start commands.
@dleute noted! Thank you!
Thanks to @jeffdm for the assistance today in powering through the issue noted here. In our case, this turned out to be a routing table problem that Jeff identified. It takes a few manual steps to get around it, but it seems as though if you run a
netstat -rn
and don't have an entry for 192.168.99 for your virtualbox, you'll get a timeout, and the hanging 99% thing. For us, this solution worked:
Quit Kitematic after the freeze Run this at the command line:
sudo route -nv add -net 192.168.99 -interface vboxnet0
Restart Kitematic.
You shouldn't need to delete the virtual machine or kill your container. It's a network problem at the core, not anything to do with your VirtualBox, Container or Kitematic installation.
And a huge +1 for the environment variable idea.
Any way to send initial state or information into the container at startup would be a thing of beauty.
Had the same issue. Solved by the following steps
1- Uninstalled Kitematic with AppCleaner
2 - Removed VM (and all files) from VirtualBox
3 - rm -rf ~/Library/Application\ Support/Kitematic
4 - Reinstalled Kitematic
5 - ????
6 - PROFIT
i have solved by
As @johncokos mentioned, this is almost certainly caused by some software removing VirtualBox's host-only network (which is used to connect to the VM) from your Mac's routing tables.
Re-installing VBox or deleting the network interface essentially puts the routing table entry back. The docker-machine and us are working on a fix for this. Thanks for the info and stay tuned!
As an update, this has been stable for a couple of days, even when crossing networks.
I wonder if running the route add command as sudo makes it un-removable by whatever process was nuking it?
I just had a similar issue of the 99% - It seems that the virtualbox create command simply never returns which created a 'bad' vbox. I manually did a remove of the vbox and started kitematic again, which was then able to finish the new dev vbox creation.
To Cleanup:
# Get a list of machine and look for 'dev'
$ docker-machine ls
# Stop docker machine and remove it
$ docker-machine stop dev
$ docker-machine rm dev
@johncokos I had the 192.168.99
entry but I run sudo route -nv add -net 192.168.99 -interface vboxnet0
anyways and it worked.
Maybe you can just check if this line is in your /etc/hosts
:
127.0.0.1 localhost
I solved it by adding it to my hosts
.
Solved this issue by adding Firewall exceptions (allowed incomming connections) to Kitematic and Virtualbox and releting hanged VM.
@davidthewatson @kematzy @timothyjlaurent @dleute @psyclip-r @laosb @inakiabt @bunam @luizkowalski
We are testing out a pre-release that should fix this problem! Do you mind giving it a try?
Let me know if you are still running into the issue after.
Also consolidating this issue with https://github.com/kitematic/kitematic/issues/236
So what is the actual problem? I'm experiencing this issue and would like to figure out my own workaround till it's fixed.
+1 I just hit this issue on the latest one
It is not happening for me now :+1:
This is a general error for anytime docker-machine create
hangs. Here's an update on some known problems & fixes:
Mac OS X
Windows
I'm experiencing this problem on Windows 7. Kitematic was working just a few days ago. The Kitematic window is stuck at 99% starting the Docker VM.
$ ~/AppData/Local/Kitematic/app-0.7.5/resources/resources/docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM
kitematic virtualbox Running tcp://192.168.99.101:2376
$ ~/AppData/Local/Kitematic/app-0.7.5/resources/resources/docker -H=192.168.99.101:2376 ps
Get http://192.168.99.101:2376/v1.19/containers/json: dial tcp 192.168.99.101:2376: ConnectEx tcp: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.. Are you trying to connect to a TLS-enabled daemon without TLS?
I tried deleting the Kitematic VM in VirtualBox and restarting Kitematic to let it recreate the VM. Same problem.
I've disabled the Windows Firewall and I am not connected to a VPN. VT-X is enabled.
I'm using Kitematic 0.7.5 and VirtualBox 5.0.0. I had boot2docker installed but I uninstalled it a few days ago.
@doxxx The latest Kitematic release is 0.7.6, which has a few key updates - Please update and let us know if that fixes your issue: https://github.com/kitematic/kitematic/releases
Seeing this issue (stuck at 99%), though still didn't receive an error message after letting it sit for an hour.
If I open VirtualBox.app I see the 'dev' instance running and can open its console (root@boot2docker). It has an IP of 192.168.99.100 (eth1).
netstat -r
on OS X shows the following:
Internet:
Destination Gateway Flags Refs Use Netif Expire
default 10.0.1.1 UGSc 149 1 en0
10.0.1/24 link#4 UCS 2 0 en0
10.0.1.1/32 link#4 UCS 1 0 en0
10.0.1.1 20:c9:d0:10:c5:a2 UHLWIir 151 265 en0 949
10.0.1.20 c0:33:5e:d4:59:66 UHLWI 0 0 en0 1187
10.0.1.21/32 link#4 UCS 0 0 en0
10.0.1.255 ff:ff:ff:ff:ff:ff UHLWbI 0 5 en0
127 localhost UCS 0 0 lo0
localhost localhost UH 3 351 lo0
169.254 link#4 UCS 0 0 en0
192.168.99 link#10 UC 2 0 vboxnet
192.168.99.255 ff:ff:ff:ff:ff:ff UHLWbI 0 5 vboxnet
Not using any VPN or firewall.
@powdahound usually it's a connection issue, where the certs aren't being generated or copied to the machine.
ls ~/.docker/machine/certs/
ls ~/.docker/machine/machines/dev/
See if all .pem
files are there.
You can also verify it to be a certs issue if you did:
eval "$(docker-machine env dev)"
then
docker version
which will complain about certs/tls/x509
Here's the output from all that.
$ ll .docker/machine/certs/
total 32
-rw------- 1 garret staff 1.6K Jul 21 11:38 ca-key.pem
-rw-r--r-- 1 garret staff 1.0K Jul 21 11:38 ca.pem
-rw-r--r-- 1 garret staff 1.0K Jul 21 11:38 cert.pem
-rw------- 1 garret staff 1.6K Jul 21 11:38 key.pem
$ ll .docker/machine/machines/dev/
total 74136
-rw------- 1 garret staff 27M Jul 21 13:32 boot2docker.iso
-rw------- 1 garret staff 1.6K Jul 21 13:32 config.json
drwx------ 5 garret staff 170B Jul 21 13:32 dev
-rw------- 1 garret staff 9.2M Jul 21 13:33 disk.vmdk
-rw------- 1 garret staff 1.6K Jul 21 13:32 id_rsa
-rw------- 1 garret staff 381B Jul 21 13:32 id_rsa.pub
$ eval "$(docker-machine env dev)"
Unexpected error getting machine url: exit status 255
$ docker version
Client version: 1.7.1
Client API version: 1.19
Go version (client): go1.4.2
Git commit (client): 786b29d
OS/Arch (client): darwin/amd64
Get http:///var/run/docker.sock/v1.19/version: dial unix /var/run/docker.sock: no such file or directory. Are you trying to connect to a TLS-enabled daemon without TLS?
Should some certs be in ~/.docker/machine/machines/dev/
too?
Just tried to install 0.7.6 still complains about IP conflict and hanged at 99%
@powdahound pretty much what I expected - If you look at your machines/dev
dir, you'll see that it doesn't have any of the .pem files.
Here's what mine looks like as a comparison:
boot2docker.iso
cert.pem
dev/
id_rsa
key.pem
server.pem
ca.pem
config.json
disk.vmdk
id_rsa.pub
server-key.pem
Odd. Any other logs or debugging I can do to help? I've been able to reproduce this after multiple reinstalls and fresh starts. Not sure which tool in the chain is to blame for the issue.
Perhaps the entire tree might shed some light:
C:\Users\Dennis.docker>tree /f /a Folder PATH listing for volume Windows Volume serial number is 4AB2-A3A4 C:. ---machine +---cache | boot2docker.iso |
---|
+---certs
| ca-key.pem
| ca.pem
| cert.pem
| key.pem
|
---machines
+---dev
| | boot2docker.iso
| | config.json
| | disk.vmdk
| | id_rsa
| | id_rsa.pub
| |
| ---dev
| | dev.vbox
| | dev.vbox-prev
| |
| ---Logs
| VBox.log
| VBoxStartup.log
|
---kitematic
| boot2docker.iso
| config.json
| disk.vmdk
| id_rsa
| id_rsa.pub
|
---kitematic
| kitematic.vbox
| kitematic.vbox-prev
|
---Logs
VBox.log
VBox.log.1
VBox.log.2
VBox.log.3
VBoxStartup.log
DaR
From: Garret Heaton Sent: Wednesday, July 22, 2015 10:44 AM To: kitematic/kitematic
Odd. Any other logs or debugging I can do to help? I've been able to reproduce this after multiple reinstalls and fresh starts. Not sure which tool in the chain is to blame for the issue.
— Reply to this email directly or view it on GitHub.
No luck here either running in Win 7
Just a heads up, it looks like newer machines point directly to the certs folder instead of copying them - Sorry for the confusion.
You can verify that your certs are at the right location with: docker-machine inspect dev
or docker-machine inspect kitematic
on Windows
C:\Users\Dennis\AppData\Local\Kitematic\app-0.7.6\resources\resources>docker-machine inspect dev { "DriverName": "virtualbox", "Driver": { "IPAddress": "192.168.99.101", "SSHUser": "docker", "SSHPort": 62426, "MachineName": "dev", "CaCertPath": "C:\Users\Dennis.docker\machine\certs\ca.pem", "PrivateKeyPath": "C:\Users\Dennis.docker\machine\certs\ca-key.pem", "SwarmMaster": false, "SwarmHost": "tcp://0.0.0.0:3376", "SwarmDiscovery": "", "CPU": 1, "Memory": 1024, "DiskSize": 20000, "Boot2DockerURL": "", "Boot2DockerImportVM": "", "HostOnlyCIDR": "192.168.99.1/24" }, "StorePath": "C:\Users\Dennis.docker\machine\machines\dev", "HostOptions": { "Driver": "", "Memory": 0, "Disk": 0, "EngineOptions": { "ArbitraryFlags": [], "Dns": null, "GraphDir": "", "Ipv6": false, "InsecureRegistry": [], "Labels": [], "LogLevel": "", "StorageDriver": "", "SelinuxEnabled": false, "TlsCaCert": "", "TlsCert": "", "TlsKey": "", "TlsVerify": true, "RegistryMirror": [], "InstallURL": "https://get.docker.com" }, "SwarmOptions": { "IsSwarm": false, "Address": "", "Discovery": "", "Master": false, "Host": "tcp://0.0.0.0:3376", "Image": "swarm:latest", "Strategy": "spread", "Heartbeat": 0, "Overcommit": 0, "TlsCaCert": "", "TlsCert": "", "TlsKey": "", "TlsVerify": false, "ArbitraryFlags": [] }, "AuthOptions": { "StorePath": "", "CaCertPath": "C:\Users\Dennis.docker\machine\certs\ca.pem", "CaCertRemotePath": "", "ServerCertPath": "C:\Users\Dennis.docker\machine\machines\dev\server.pem", "ServerKeyPath": "C:\Users\Dennis.docker\machine\machines\dev\server-key.pem", "ClientKeyPath": "C:\Users\Dennis.docker\machine\certs\key.pem", "ServerCertRemotePath": "", "ServerKeyRemotePath": "", "PrivateKeyPath": "C:\Users\Dennis.docker\machine\certs\ca-key.pem", "ClientCertPath": "C:\Users\Dennis.docker\machine\certs\cert.pem" } } }
C:\Users\Dennis\AppData\Local\Kitematic\app-0.7.6\resources\resources>docker-machine inspect kitematic { "DriverName": "virtualbox", "Driver": { "IPAddress": "192.168.99.100", "SSHUser": "docker", "SSHPort": 59761, "MachineName": "kitematic", "CaCertPath": "C:\Users\Dennis.docker\machine\certs\ca.pem", "PrivateKeyPath": "C:\Users\Dennis.docker\machine\certs\ca-key.pem", "SwarmMaster": false, "SwarmHost": "tcp://0.0.0.0:3376", "SwarmDiscovery": "", "CPU": 1, "Memory": 2048, "DiskSize": 20000, "Boot2DockerURL": "", "Boot2DockerImportVM": "", "HostOnlyCIDR": "192.168.99.1/24" }, "StorePath": "C:\Users\Dennis.docker\machine\machines\kitematic", "HostOptions": { "Driver": "", "Memory": 0, "Disk": 0, "EngineOptions": { "ArbitraryFlags": [], "Dns": null, "GraphDir": "", "Ipv6": false, "InsecureRegistry": [], "Labels": [], "LogLevel": "", "StorageDriver": "", "SelinuxEnabled": false, "TlsCaCert": "", "TlsCert": "", "TlsKey": "", "TlsVerify": true, "RegistryMirror": [], "InstallURL": "https://get.docker.com" }, "SwarmOptions": { "IsSwarm": false, "Address": "", "Discovery": "", "Master": false, "Host": "tcp://0.0.0.0:3376", "Image": "swarm:latest", "Strategy": "spread", "Heartbeat": 0, "Overcommit": 0, "TlsCaCert": "", "TlsCert": "", "TlsKey": "", "TlsVerify": false, "ArbitraryFlags": [] }, "AuthOptions": { "StorePath": "", "CaCertPath": "C:\Users\Dennis.docker\machine\certs\ca.pem", "CaCertRemotePath": "", "ServerCertPath": "C:\Users\Dennis.docker\machine\machines\kitematic\server.pem", "ServerKeyPath": "C:\Users\Dennis.docker\machine\machines\kitematic\server-key.pem", "ClientKeyPath": "C:\Users\Dennis.docker\machine\certs\key.pem", "ServerCertRemotePath": "", "ServerKeyRemotePath": "", "PrivateKeyPath": "C:\Users\Dennis.docker\machine\certs\ca-key.pem", "ClientCertPath": "C:\Users\Dennis.docker\machine\certs\cert.pem" } } }
DaR
From: FrenchBen Sent: Wednesday, July 22, 2015 8:56 PM To: kitematic/kitematic Cc: Dennis Ruffer
Just a heads up, it looks like newer machines point directly to the certs folder instead of copying them - Sorry for the confusion. You can verify that your certs are at the right location with: docker-machine inspect dev or docker-machine inspect kitematic on Windows
— Reply to this email directly or view it on GitHub.
For windows user, assume 'dev' to be 'kitematic'
docker-machine stop dev
DHCP Server
is checked - if it is, check if the Server address
is: 192.168.99.1
- If NOT, just click Cancel and move on to the next one.DHCP server
checked and a Server address
of 192.168.99.1
and cancel out of the Preferencesdocker-machine start dev
then docker-machine regenerate-certs dev
Steps 1-9 were interesting, but everything was already setup as you directed… hmmm…
Step 10 is executing now, and it looks like regenerate-carts has died.
C:\Users\Dennis\AppData\Local\Kitematic\app-0.7.6\resources\resources>docker-machine stop kitematic
C:\Users\Dennis\AppData\Local\Kitematic\app-0.7.6\resources\resources>docker-machine start kitematic
Starting VM...
Started machines may have new IP addresses. You may need to re-run the docker-machine env
command.
C:\Users\Dennis\AppData\Local\Kitematic\app-0.7.6\resources\resources>docker-machine regenerate-certs kitematic Regenerate TLS machine certs? Warning: this is irreversible. (y/n): y Regenerating TLS certificates
DaR
From: FrenchBen Sent: Wednesday, July 22, 2015 9:18 PM To: kitematic/kitematic Cc: Dennis Ruffer
SOLUTION (or high hopes)
For windows user, assume 'dev' to be 'kitematic' Turn off your VM via the following terminal command docker-machine stop dev Open your VirtualBox app and go to your Preferences (app preferences, not VM settings) Click on Network, and Host-Only Networks tab You should see a few vboxnet entries, for each one do Click on vboxnet entry and then click on the screw-driver icon (edit) Click on DHCP Server tab On the selected vboxnet, check if DHCP Server is checked - if it is, check if the Server address is: 192.168.99.1 - If NOT, just click Cancel and move on to the next one.
Write down which vboxnet0, vboxnet1, vboxnet2 (however many) has the proper setting of DHCP server checked and a Server address of 192.168.99.1 and cancel out of the Preferences Select the dev VM (windows kitematic VM) Click Settings then Network Adapter 2 should be a Host-Only Adapter, and change its name to be the vboxnet you noted above. Click OK and close VirtualBox app In your terminal run: docker-machine start dev then docker-machine regenerate-certs dev You can now start Kitematic and see it working :)
— Reply to this email directly or view it on GitHub.
Note that this morning, regenerate-carts did finish with: Maximum number of retries (60) exceeded.
DaR
From: Dennis Ruffer Sent: Wednesday, July 22, 2015 10:04 PM To: kitematic/kitematic, kitematic/kitematic
Steps 1-9 were interesting, but everything was already setup as you directed… hmmm…
Step 10 is executing now, and it looks like regenerate-carts has died.
C:\Users\Dennis\AppData\Local\Kitematic\app-0.7.6\resources\resources>docker-machine stop kitematic
C:\Users\Dennis\AppData\Local\Kitematic\app-0.7.6\resources\resources>docker-machine start kitematic
Starting VM...
Started machines may have new IP addresses. You may need to re-run the docker-machine env
command.
C:\Users\Dennis\AppData\Local\Kitematic\app-0.7.6\resources\resources>docker-machine regenerate-certs kitematic Regenerate TLS machine certs? Warning: this is irreversible. (y/n): y Regenerating TLS certificates
DaR
From: FrenchBen Sent: Wednesday, July 22, 2015 9:18 PM To: kitematic/kitematic Cc: Dennis Ruffer
SOLUTION (or high hopes)
For windows user, assume 'dev' to be 'kitematic' Turn off your VM via the following terminal command docker-machine stop dev Open your VirtualBox app and go to your Preferences (app preferences, not VM settings) Click on Network, and Host-Only Networks tab You should see a few vboxnet entries, for each one do Click on vboxnet entry and then click on the screw-driver icon (edit) Click on DHCP Server tab On the selected vboxnet, check if DHCP Server is checked - if it is, check if the Server address is: 192.168.99.1 - If NOT, just click Cancel and move on to the next one.
Write down which vboxnet0, vboxnet1, vboxnet2 (however many) has the proper setting of DHCP server checked and a Server address of 192.168.99.1 and cancel out of the Preferences Select the dev VM (windows kitematic VM) Click Settings then Network Adapter 2 should be a Host-Only Adapter, and change its name to be the vboxnet you noted above. Click OK and close VirtualBox app In your terminal run: docker-machine start dev then docker-machine regenerate-certs dev You can now start Kitematic and see it working :)
— Reply to this email directly or view it on GitHub.
@DRuffer Could you take a screenshot of step 5. to show the vboxnet setup - Also you may need to kill the original Vbox DHCP service to get it to grab the changes. Can you also try to ping the VM once it's restarted?
docker-machine restart kitematic
ping 192.168.99.100
I waited half an hour on this window. It froze at 99%. I have virtualbox installed.
https://www.dropbox.com/s/ypxdos36boi4w8u/Screenshot%202015-04-16%2019.16.28.png?dl=0