连接docker集装箱

我一直在寻找谷歌,但我找不到任何答案。

有可能连接到我刚刚启动的virtualbox泊坞窗容器。 我有虚拟机的IP,但是如果我尝试通过SSH连接当然要求我input密码。

问候。

https://github.com/BITPlan/docker-stackoverflowanswers/tree/master/33232371

重复步骤。

在我的Mac OS X机器上

docker-machine env default 

节目

  export DOCKER_HOST="tcp://192.168.99.100:2376" 

所以我添加了一个条目

 192.168.99.100 docker 

到我的/ etc / hosts

所以pingdocker工作。 作为我正在使用的Dockerfile:

 # Ubuntu image FROM ubuntu:14.04 

我正在build设

 docker build -t bitplan/sshtest:0.0.1 . 

和testing

 docker run -it bitplan/sshtest:0.0.1 /bin/bash 

现在sshdocker会作出反应

 The authenticity of host 'docker (192.168.99.100)' can't be established. ECDSA key fingerprint is SHA256:osRuE6B8bCIGiL18uBBrtySH5+iGPkiHHiq5PZNfDmc. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'docker,192.168.99.100' (ECDSA) to the list of known hosts. wf@docker's password: 

但是在这里,你连接到docker机器不是你的形象! ssh端口在端口22.您需要将其redirect到另一个端口并configuration您的映像以支持ssh到root或有效的用户。

请参阅https://docs.docker.com/examples/running_ssh_service/

您是否尝试连接到正在运行的容器或尝试连接到运行docker守护程序的virtualbox映像?

如果第一个,你不能只是SSH进入一个正在运行的容器,除非该容器正在运行一个SSH守护进程。 使用docker exec -ti <container name/id> /bin/sh来获得一个正在运行的容器的shell最简单的方法。 做一个docker ps来查看正在运行的容器。

如果第二个,如果你的主机是用docker-machine创build的,那么你可以用docker-machine ssh <machine name> ssh进入它。 你可以看到你们所有人都在用docker-machine ls运行机器。

如果这没有帮助,你可以澄清你的问题一点,并提供有关如何创build您的形象和启动容器的细节。

您可以使用ssh密钥访问无密码。

这是一些介绍https://wiki.archlinux.org/index.php/SSH_keys