提问人:th3_sh0w3r 提问时间:11/17/2023 更新时间:11/17/2023 访问量:12
指向主机上 docker 容器的符号链接
Symbolic link to docker container on host machine
问:
我有一个 docker 容器,其中包含一个 GitHub 存储库,其中包含我处理的代码。 代码就在容器内,我通过 VSCode WSL 扩展连接到它。 现在我想使用 GitHub Desktop(例如樱桃采摘),有没有办法在主机上创建指向容器文件夹的符号链接,以便 GitHub Desktop 可以看到该文件夹?
或者,是否可以选择在 Docker 中创建卷并以某种方式将其与 GitHub Desktop 一起使用?
答:
1赞
David Maze
11/17/2023
#1
你不能这么做。Docker 容器(作为 Docker 的核心功能)具有与主机系统隔离的文件系统,因此主机无法直接访问容器的文件,反之亦然。符号链接只是按名称提供指向另一个文件的指针,它不能帮助跨越这个边界。
由于 Docker 的文件系统隔离功能,我通常不建议将其强制引入开发人员工作流程。作为开发人员,您通常需要直接处理文件,并且需要直接访问开发人员工具;将它们隐藏在容器中只会使一切变得更加困难,并且需要专门的 IDE 支持。
如果您的源代码直接位于主机上,并且您有可用的 CLI 和其他常规开发人员工具,则您还可以使用 GitHub Desktop 等工具,而无需任何特殊设置。git
评论
0赞
th3_sh0w3r
11/18/2023
我之前在主机上有我的源代码,并创建了一个卷挂载。但这让我的本地主机慢了大约 10 倍,这就是我移动它的原因。此外,NPM 和 Composer 非常慢(都安装在 Docker 容器中)。知道我还如何在本地环境(例如.PHP,Apache等)中使用Docker,并且仍然能够在不损失性能的情况下从主机或主机上访问文件吗?例如,Laravel 在这个默认的“Ubuntu”发行版中创建了代码,该发行版可以通过主机访问(以某种方式通过 Windows 网络),但我不知道如何使用它。
评论