I'm on OSX and I'd like to be able to SSH into the host vm in order to:
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.
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:~$
Oct 2015: Boot2docker is deprecated in favor of docker-machine. To login:
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM
default * virtualbox Running tcp://192.168.99.100:2376
$ docker-machine ssh default
You can ssh into docker host with vagrant ssh docker-host-id
but first you need to know the docker-host-id.
You can get a list of all active Vagrant environments with vagrant global-status
command.
To get the docker-host id you can filter with grep:
vagrant global-status | grep docker-host
you'll obtain an output similar to:
68f58d0 default virtualbox running /Users/yourUser/.vagrant.d/data/docker-host
copy the first column id, and then ssh into docker-host:
vagrant ssh 68f58d0
vagrant global status docs
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With