gpt4 book ai didi

docker-compose 其他机器的共享卷

转载 作者:行者123 更新时间:2023-12-02 17:57:09 31 4
gpt4 key购买 nike

我正在使用在 Windows 10 上创建的 docker(该 docker 用于 linux)。

此外,使用 docker-compose(3.4 版)将 docker 外部的卷映射到 docker 容器中。

我在另一台计算机上有一个共享文件夹,我想在 docker 中使用它。

我检查了该文件夹的访问权限,我可以从 docker 正在运行的计算机上访问它。

//ip_addr/shared_folder

在 docker-compose 中,我写道:

volumes:
- //1.2.3.4/my_folder:my_docker_folder

我发现了一些带有网络声明的语法。
不知 Prop 体要怎么写?
volumes:
- /my_folder:my_docker_folder
networks:
frontend:
ipv4_address: 1.2.3.4

并且 ip 1.2.3.4 是 my_folder 的 ip?

...但是这种语法可能不正确,或者我应该运行一些命令来正确共享文件夹。

为了将另一台计算机的共享文件夹映射到 docker 需要做什么。

我已经尝试了几件事,还映射了一个符号链接(symbolic link)。

我正在尝试在 Windows 10 中创建一个符号链接(symbolic link)并将其附加到 docker,但这对我没有多大帮助,因为我遇到了异常。

在 Windows 命令行中,我做了:
mklink /D c:\test_ext \\ip\shared_folder

运行 docker 时(我有 docker 社区版版本
18.06.1-ce-win73 (19507) - Linux 容器)。

在命令行中,我尝试运行 alpine(这也发生在其他基于 linux 镜像的 docker 上):

docker run -i -t -v c:\test_ext:/data:rw alpine/bin/sh
我得到错误:

docker: Error response from daemon: error while creating mount source path '/host_mnt/c/test_ext': mkdir /host_mnt/c/test_ext: file exists.



这只发生在外部 IP 上。

我看到的是文件夹+子文件夹+文件以完全权限共享。

我尝试了一些解决方法,例如:docker volumes prune,但这并没有太大帮助。

为什么会出现该错误消息,我该如何解决?

我还发现了一种可能有帮助的替代方法:
docker volume create \
--driver local \
--opt type=nfs \
--opt o=addr=ip_address,rw \
--opt device=:/myfolder
my_volume

这也不能解决问题(语法错误)。

谢谢。

最佳答案

我认为你需要给予。靠近音量volumes:
- ./my_folder:my_docker_folder

关于docker-compose 其他机器的共享卷,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53660217/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com