Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将目录绑定到docker容器_Docker_Containers_Bind_Directory - Fatal编程技术网

将目录绑定到docker容器

将目录绑定到docker容器,docker,containers,bind,directory,Docker,Containers,Bind,Directory,我正在构建一个测试项目,该项目需要项目目录之外的模块。项目文件夹在docker中,我想将该模块目录绑定到我的项目的docker容器。甚至有可能做到吗?还是我问错了问题?顺便说一下,我还是docker的新手,所以我只是尝试一下。我的理解是,您需要将主机文件夹装载到容器中。所以试试这个: docker run -v /host/project_folder:/container/project -t avian/project_image bash 解释 -v---volume=[]绑定装载卷

我正在构建一个测试项目,该项目需要项目目录之外的模块。项目文件夹在docker中,我想将该模块目录绑定到我的项目的docker容器。甚至有可能做到吗?还是我问错了问题?顺便说一下,我还是docker的新手,所以我只是尝试一下。

我的理解是,您需要将主机文件夹装载到容器中。所以试试这个:

docker run -v /host/project_folder:/container/project -t avian/project_image bash
解释
  • -v
    ---volume=[]绑定装载卷
  • /host/project\u文件夹
    -主机服务器的文件夹
  • /container/project
    -容器文件夹
更新: 最新的docker版本(v1.9.1)支持一个新命令
volume
。因此,在docker中管理卷应该更容易

# For example, I need attach a volume to mysql container.
docker volume create --name mysql-data
docker run --name mysql -v mysql-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql

有了它,您可以随时删除container
mysql
,而不会丢失数据库数据

您可以使用
-v
选项将
卷(例如文件夹)装入容器中。可以找到更多细节

例如,来自
ghost
blog平台的Dockerfile示例:

docker run -v /data/ghost:/var/lib/ghost -d ghost
它将本地驱动器上的
/data/ghost
映射到容器内的
/var/lib/ghost

您还可以使用
--volumes from
选项指定另一个docker容器作为数据的