将曾经编译过的文件夹从共享驱动器复制到docker镜像中的自己的工作区

时间:2017-02-05 14:53:31

标签: linux docker caffe

我是服务器上的docker iamge的用户。在此服务器上,caffe框架安装在“共享”端,以便每个docker镜像都能够访问此框架而无需自行安装。

但是,我想在一个位于python文件夹中的python脚本(例如draw_net.py)中进行更改。我现在想要将文件复制到我自己的工作区并继续使用它们,并且只更改draw_net.py但是使这个文件使用已编译的数据(否则我将自己编译它,这有点痛苦)。但是因为我没有这些文件,所以我无法更改它们,因此我想将一个文件复制到我的容器中并进行更改,但依赖关系必须保持不变,这是我遇到错误的地方。我不想在我的图像上重新编译任何东西,我只是想稍微更改一个python脚本。

结构如下所示:

bin/
dev/
home/ 
lib64/
mnt/
proc/
run/
srv/
tmp/
var/
boot/
etc/
lib/
media/
opt/
 caffe/
  build/
   lib/
    _caffe.so
  data/
  docker/
  examples/
  matlab/
  python/
   caffe/
     __init__.py
     __init__.pyc
     pycaffe.py
     pycaffe.pyc
   draw_net.py
  src/
  cmake/
  distribute/
  docs/
  include/
  models/
  scripts/
  tools/
root/ 
 workspace/
  myfolder/ 
sbin/
sys/
usr/

现在我想要来自/opt/caffe/python/的文件,尤其是我自己的泊坞窗图片中的draw_net.py,所以在/root/workspace/myfolder中。

简单的cp命令导致以下错误

  

cp:无法创建符号链接'cpcaffe / build'操作不行   支持

     

cp:无法创建符号链接'cpcaffe / python / caffe / _caffe.so':操作不受支持

执行给了我预期的研究,它不能找到位于/opt/caffe/build/lib/_caffe.so的模块_caffe

我尝试添加行

import os
os.chdir('/opt/caffe/python');

在脚本的开头,但这并没有改变任何东西。

我想我以某种方式将自己的符号链接建立到原始版本,但我对这个主题有点新意,可能需要一些指示。

我对root /下的所有文件夹都有root权限,所有其他文件夹都是我只有读权限的共享文件夹。

0 个答案:

没有答案