我在OSX上,并且希望能够通过SSH进入主机vm,以便:
明确地说,这个问题不是关于ssh:进入Vagrant提供程序创建的docker容器,而是到Vagrant创建的中间boot2docker主机vm。
我知道,一个解决方法是不使用默认的boot2docker作为主机VM(如答案解释这里,但这不是这个问题是关于什么的。
Vagrant的boot2docker保留了boot2docker的ssh用户名和密码。
SSH进入虚拟机 $ boot2docker ssh Boot2Docker使用生成的SSH密钥自动登录,但是如果要手动SSH进入计算机(或者您不使用boot2docker托管VM),则凭据为: user: docker pass: tcuser
$ boot2docker ssh
Boot2Docker使用生成的SSH密钥自动登录,但是如果要手动SSH进入计算机(或者您不使用boot2docker托管VM),则凭据为:
boot2docker
user: docker pass: tcuser
https://github.com/boot2docker/boot2docker#ssh-into- vm
2022默认情况下,端口是从本地端口转发的。您可以验证以下内容:
2022
$ 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
然后登录:
$ ssh docker@localhost -p 2022 docker@localhost's password: tcuser ## . ## ## ## == ## ## ## ## === /""""""""""""""""\___/ === ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ / ===- ~~~ \______ o __/ \ \ __/ \____\______/ _ _ ____ _ _ | |__ ___ ___ | |_|___ \ __| | ___ ___| | _____ _ __ | '_ \ / _ \ / _ \| __| __) / _` |/ _ \ / __| |/ / _ \ '__| | |_) | (_) | (_) | |_ / __/ (_| | (_) | (__| < __/ | |_.__/ \___/ \___/ \__|_____\__,_|\___/ \___|_|\_\___|_| boot2docker: 0.8.0 docker@boot2docker:~$