首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在主机os和docker容器之间共享文件夹

如何在主机os和docker容器之间共享文件夹
EN

Stack Overflow用户
提问于 2016-09-14 11:11:30
回答 1查看 1.7K关注 0票数 0

我创造了一卷码头形象。码头形象是:

代码语言:javascript
复制
REPOSITORY                     TAG                 IMAGE ID            CREATED             SIZE
gcr.io/tensorflow/tensorflow   latest-gpu          7f09e75cdc12        4 months ago        1.289 GB

集装箱体积为:

代码语言:javascript
复制
CONTAINER ID        IMAGE                                     COMMAND             CREATED             STATUS                    PORTS  
e99c80d2d53e        gcr.io/tensorflow/tensorflow:latest-gpu   "/run_jupyter.sh"   21 hours ago        Up 11 minutes             6006/tcp, 0.0.0.0:8888->8888/tcp   deep

我需要在主机Ubuntu 16.04操作系统和码头容器之间共享一个文件夹。我运行了这个命令来完成这个任务:

docker运行-v /home/cortana/深度学习/:/home gcr.io/tensorflow/tensorflow:最新-gpu

这不会导致将文件夹加载到容器deep中。我不知道在这之后该怎么做,而且对码头里的集装箱也很陌生。请你也解释一下你的答案。

编辑:我删除了容器,然后运行以下命令:

代码语言:javascript
复制
docker run -v /home/cortana/deep-learning/:/home gcr.io/tensorflow/tensorflow:latest-gpu
nvidia-docker run -p 8888:8888 --name deep gcr.io/tensorflow/tensorflow:latest-gpu
nvidia-docker exec -it deep bash

容器中的deep-learning文件夹中没有名为/home/的文件夹。我在这里做错了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-14 11:20:15

我知道没有API可以更改正在运行的容器上的挂载卷。您将销毁现有容器(docker stopdocker rm),并创建一个具有适当配置(docker run)的新容器。如果您发现自己试图维护单个容器、升级容器内的应用程序或内部有数据,那么您尝试重新创建VM而不是隔离进程(这是一种反模式)的可能性很大。

通过编辑,您不是创建了/home /深度学习文件夹,而是创建了/home文件夹。您似乎还在创建第二个容器,名为“深度”,而不需要任何卷装入和执行。要使容器具有/home/深度学习卷挂载和名称深度,请运行它如下:

代码语言:javascript
复制
docker run -v /home/cortana/deep-learning:/home/deep-learning \
  -p 8888:8888 --name deep gcr.io/tensorflow/tensorflow:latest-gpu 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39488976

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档