首页 > 解决方案 > 如何在 ubuntu 18.04 中将文件从 docker 容器传输/复制到本地目录?

问题描述

我正在使用带有虚拟机的 ubuntu 18.04 在远程 GPU 服务器中运行我的程序。我在 docker 中运行我的程序,我想将 docker 容器中的绘图文件传输到我的虚拟机中的本地文件目录。我曾经scp将本地文件从虚拟机传输到 docker 容器,但现在我想传输我的程序的结果,将文件绘制回我的虚拟机中的本地文件目录。我怎么能在ubuntu中做到这一点?任何想法?

这是我之前所做的:

scp -P 8080 ./Downloads/my_func.py uid@cumulus.nlp.stanford.edu:data

对我来说,将文件从本地传输到远程 docker 容器效果很好,但是反向不起作用或者我在命令中出错了。

这是当前驻留在 docker 容器中的文件列表(来自 docker shell):

root@d3576359f9ac:/data# ls
cnn_mobnet.py              cnn_ResNet50.py  cnn_mobnet_v1.py
cnn.py    cnn_mobnet_loss_curve.png  cnn_00.py        mobnet_test.py

我的尝试

我试图复制cnn_mobnet_loss_curve.png到我的虚拟机中的本地文件目录,但它不起作用:

scp data/cnn_mobnet_loss_curve.png :./Downloads

我也尝试过docker cp data/cnn_mobnet_loss_curve.png :./Downloads,但它给了我错误,说 docker 命令无法识别。任何想法?

我要复制或传输cnn_mobnet_loss_curve.png./Downloads的位置在我的虚拟机中。我怎样才能做到这一点?在 ubuntu 中将文件从远程 docker 容器传输到本地的任何想法?如何从 Ubuntu 的终端执行此操作?任何想法?

标签: dockerubuntuscp

解决方案


我认为你可以做类似的事情。从你的终端试试这个:

me@myvirtualbox: ~$ scp -p 8080 uid@cumulus.nlp.stanford.edu:data/plot.png ./Downloads

您应该提供远程端点的密码,上述解决方案应该适合您。


推荐阅读