如何在 ubuntu 18.04 中将文件从 docker 容器传输/复制到本地目录?

How to transfer / copy files from docker container to local directory in ubuntu 18.04?

我将 ubuntu 18.04 与虚拟机一起用于 运行 我在远程 GPU 服务器中的程序。我 运行 我的程序在 docker 中,我想将 运行 容器中的绘图文件转移到我的虚拟机中的本地文件目录。我使用 scp 将本地文件从虚拟机传输到 docker 容器,但现在我想将我的程序的结果传输 运行,将文件绘制回本地我的虚拟机中的文件目录。我如何在 ubuntu 中执行此操作?有什么想法吗?

这是我之前做的:

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

对我来说,t运行将文件从本地传输到远程 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 命令无法识别。有什么想法吗?

我想复制或 t运行sfer cnn_mobnet_loss_curve.png 到我的虚拟机中的 ./Downloads。我怎样才能做到这一点?有没有想过 t运行sfer 文件从远程 docker 容器到本地 ubuntu?我如何从 Ubuntu 中的终端执行此操作?有什么想法吗?

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

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

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