连接码头集装箱

问题描述:

我一直在谷歌,但我找不到任何答案。连接码头集装箱

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

问候。

看到 https://github.com/BITPlan/docker-*answers/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文件

使平码头工作。 作为Dockerfile我使用:

# Ubuntu image 
FROM ubuntu:14.04 

,我正与

docker build -t bitplan/sshtest:0.0.1 . 

建设与

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

测试现在SSH泊坞窗将与反应

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. 
[email protected]'s password: 

但在这里你连接到码头机器而不是你的图像! ssh端口位于端口22.您需要将其重定向到另一个端口并配置您的映像以支持ssh到root或有效用户。

参见例如https://docs.docker.com/examples/running_ssh_service/

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

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

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

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

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

如果这不起作用,您可以稍微澄清一下您的问题,并提供有关如何创建图像和启动容器的详细信息。