Docker云托pipe

最近我创build了一个linode帐户,并在Ubuntu 14.04LTS中安装了docker,我安装了一个映像,并运行了一个容器,目前一切正常。

我想从我的本地机器到linode目录做一个scp ,我成功了。

 scp file.txt root@ip:/path/to/directory 

只有我的问题开始,当我意识到docker容器有自己的root@hostname:/path/to/directory在林德root@ip:/和我不知道如何从我的本地机器直接执行到容器path,只是因为我不知道的语法,我不是很有经验的过程。

我环顾四周,要求Linode支持,但他们很less能帮助我。

我决定testing一些我的理论,如:而不是直接到docker集装箱scp linode scp file.txt root@ip:/home从那里我会做一个docker cp file.txt <container-name>:/path/to/directory后,我点击进入,我得到没有任何反应,也没有成功。

我是一个初学者,所以我错过了什么? 我不理解什么?

你的docker cp aproach是正确的。 事实上,它不会返回任何回应。 你可以检查文件是否确实使用docker exec containerid bash复制。

还有另外一种更复杂的方式,不推荐。 如果你在你的容器中安装openssh,并打开另一个端口可以说-p 2222:22你可以直接scp到容器。

当然,你可以通过docker的方式做到这一点。 声明一个卷,将你的主机目录链接到你的容器目录: -v /path/to/directory:/path/to/directory 。 然后你的SCP到你的主机将工作。

问候