首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

docker-machine ssh

使用SSH登录或在计算机上运行命令。

要登录,只需运行docker-machine ssh machinename*

$ docker-machine ssh dev
                        ##        .
                  ## ## ##       ==
               ## ## ## ##      ===
           /""""""""""""""""\___/ ===
      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ /  ===- ~~~
           \______ o          __/
             \    \        __/
              \____\______/
 _                 _   ____     _            _
| |__   ___   ___ | |_|___ \ __| | ___   ___| | _____ _ __
| '_ \ / _ \ / _ \| __| __) / _` |/ _ \ / __| |/ / _ \ '__|
| |_) | (_) | (_) | |_ / __/ (_| | (_) | (__|   <  __/ |
|_.__/ \___/ \___/ \__|_____\__,_|\___/ \___|_|\_\___|_|
Boot2Docker version 1.4.0, build master : 69cf398 - Fri Dec 12 01:39:42 UTC 2014
docker@boot2docker:~$ ls /
Users/   dev/     home/    lib/     mnt/     proc/    run/     sys/     usr/
bin/     etc/     init     linuxrc  opt/     root/    sbin/    tmp      var/

还可以指定要远程运行的命令,方法是将它们直接附加到docker-machine ssh命令,就像普通的ssh程序工作:

$ docker-machine ssh dev free

total         used         free       shared      buffers
Mem:       1023556       183136       840420            0        30920
-/+ buffers:             152216       871340
Swap:      1212036            0      1212036

带有标志的命令也可以工作:

$ docker-machine ssh dev df -h

Filesystem                Size      Used Available Use% Mounted on
rootfs                  899.6M     85.9M    813.7M  10% /
tmpfs                   899.6M     85.9M    813.7M  10% /
tmpfs                   499.8M         0    499.8M   0% /dev/shm
/dev/sda1                18.2G     58.2M     17.2G   0% /mnt/sda1
cgroup                  499.8M         0    499.8M   0% /sys/fs/cgroup
/dev/sda1                18.2G     58.2M     17.2G   0%
/mnt/sda1/var/lib/docker/aufs

如果您正在使用下一节详述的“外部”SSH类型,则可以ssh在生成的命令中包含其他参数以传递到二进制文件(除非它们与Docker Machine生成的命令的任何默认参数相冲突) 。例如,以下命令会将端口8080从default机器转发到localhost主机上:

$ docker-machine ssh default -L 8080:localhost:8080

不同类型的SSH

当调用DockerMachine时,它将检查是否有可尊敬的ssh二进制文件将在本地使用,并尝试使用它运行的SSH命令,无论它们是创建之类的操作的一部分,还是用户直接请求的操作。如果它找不到外部ssh在本地使用本机go实现时,它将默认使用密码/ssh在您可能无法访问传统UNIX工具的情况下,这是非常有用的,例如如果您在Windows上使用Docker Machine而没有在Windows旁边安装msysgit。

在大多数情况下,您将不必担心这个实现细节,DockerMachine将明智地采取行动。但是,如果您有意使用Go本机版本,可以使用全局命令行标志/环境变量,如下所示:

$ docker-machine --native-ssh ssh dev

这两种方法之间的行为有一些差异,所以如果遇到问题或不一致的地方,请报告。

扫码关注腾讯云开发者

领取腾讯云代金券