Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.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
Linux Dockerfile,通过服务器装载主机windows文件夹_Linux_Windows_Docker_Docker Compose_Dockerfile - Fatal编程技术网

Linux Dockerfile,通过服务器装载主机windows文件夹

Linux Dockerfile,通过服务器装载主机windows文件夹,linux,windows,docker,docker-compose,dockerfile,Linux,Windows,Docker,Docker Compose,Dockerfile,我正在尝试将主机的文件夹装载到docker容器,但未成功。我有以下设置: Windowsmachine 从1 I访问linuxserver 在2上,我创建了一个docker容器,该容器应该能够访问1上的文件 在dockerfile中,我执行以下操作: ADD //G/foo/boo /my_project/boo 这会引发一个无法找到文件夹的错误,因为容器试图在linux上访问该文件夹。但是,我确实希望容器访问windows计算机 理想情况下,无需将文件从源文件夹复制到目标文件夹。我不确定AD

我正在尝试将主机的文件夹装载到
docker容器
,但未成功。我有以下设置:

  • Windows
    machine
  • 从1 I访问
    linux
    server
  • 在2上,我创建了一个
    docker
    容器,该容器应该能够访问1上的文件
  • dockerfile
    中,我执行以下操作:

    ADD //G/foo/boo /my_project/boo
    
    这会引发一个无法找到文件夹的错误,因为容器试图在
    linux
    上访问该文件夹。但是,我确实希望容器访问windows计算机


    理想情况下,无需将文件从源文件夹复制到目标文件夹。我不确定
    ADD
    是否复制了文件或只是提供了一个访问文件的机会。

    卷被设计为连接到正在运行的容器,而不是用于构建docker映像的容器。如果要使正在运行的容器访问共享文件系统,则需要在创建期间附加应用程序容器的卷。此步骤取决于部署容器时使用的内容,但如果使用docker compose,则可以按如下所示完成此步骤

    nginxplus:
      image: bhc-nginxplus
      volumes:
      - "${path_on_the_host}:${path_in_the_container}"
    
    使用docker命令

    docker run -v ${path_on_the_host}:${path_in_the_container} $image
    

    嗨,abe,询问超级用户。@Peter,谢谢,这是链接-Docker对访问其他系统上的文件没有任何特殊支持。您需要以某种方式将Windows驱动器装载到Linux系统上,然后将其装载到容器中(您不能强制在Dockerfile中装载任何特定的卷)。这似乎不是一个与编程相关的问题。