How do I SSH into the boot2docker host vm that the Vagrant 1.6 Docker Provider sets up?

Motin picture Motin · Jun 18, 2014 · Viewed 51.7k times · Source

I'm on OSX and I'd like to be able to SSH into the host vm in order to:

  1. Get access to a native docker environment. This facilitates understanding and debugging port forwarding issues.
  2. Vagrant rsync seems to leave a lot of unused synced directories that's eating up disk space that I'd like to recover.

To be clear, this question is NOT about ssh:ing into the docker containers that the Vagrant provider creates, but into the intermediate boot2docker host vm that Vagrant creates.

I know that a workaround is to not use the default boot2docker as the host vm (as explained in the answer here), but that's not what this question is about.

Answer

David256 picture David256 · Jun 24, 2014

Vagrant's boot2docker keeps boot2docker's ssh username and password.

SSH into VM

$ boot2docker ssh

Boot2Docker auto logs in using the generated SSH key, but if you want to SSH into the machine manually (or you're not using a boot2docker managed VM), the credentials are:

user: docker
pass: tcuser

https://github.com/boot2docker/boot2docker#ssh-into-vm

The port is forwarded from the local port 2022 by default. You can verify this:

$ VBoxManage list vms | grep docker
"docker-host_default_1234567890000_1234" {3d66ecf6-4539-47ca-afd2-66f953cd9a3e}
$ VBoxManage showvminfo docker-host_default_1234567890000_1234 | grep ssh
NIC 1 Rule(1):   name = ssh, protocol = tcp, host ip = 127.0.0.1, host port = 2022, guest ip = , guest port = 22

And then login:

$ ssh docker@localhost -p 2022
docker@localhost's password: tcuser
                        ##        .
                  ## ## ##       ==
               ## ## ## ##      ===
           /""""""""""""""""\___/ ===
      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ /  ===- ~~~
           \______ o          __/
             \    \        __/
              \____\______/
 _                 _   ____     _            _
| |__   ___   ___ | |_|___ \ __| | ___   ___| | _____ _ __
| '_ \ / _ \ / _ \| __| __) / _` |/ _ \ / __| |/ / _ \ '__|
| |_) | (_) | (_) | |_ / __/ (_| | (_) | (__|   <  __/ |
|_.__/ \___/ \___/ \__|_____\__,_|\___/ \___|_|\_\___|_|
boot2docker: 0.8.0
docker@boot2docker:~$