DEVILBOX:使用 data/www/{symbolic_link} 的符号链接
DEVILBOX : Using symlinks for data/www/{symbolic_link}
有没有使用符号 link 将自定义文件夹添加到 Devilbox 的数据文件夹中?
当我放置符号 link 时,自动虚拟主机会忽略该文件夹。
谢谢。
好的,我成功了。为了将来参考,手动制作所有根文件夹,但接受根文件夹内部的符号链接。
data/www/proj-slug/{htdocs} width {htdocs} -> ~/git/proj-slug
我曾经遇到过完全相同的问题,但我已经解决了。
TL;DR;解决方案:
在 devilbox 项目的根目录中创建一个名为 docker-compose.override.yml
的新文件
将其复制并粘贴到文件中
# IMPORTANT: The version must match the version of docker-compose.yml
---
version: '2.3'
services:
php:
volumes:
- $HOME:$HOME
httpd:
volumes:
- $HOME:$HOME
- 现在您可以创建符号链接,例如
data/www/proj-slug/htdocs -> ~/your-custom-path
说明
关注@Pirex360 的回复还不足以使用符号链接。实际上,当您创建符号链接时,vhost 页面会显示“没有 htdocs 文件夹”。
问题在于 Devilbox 中的所有内容都已“Docker 化”,因此您的 Docker 容器无法访问未安装在 Docker 中的文件和文件夹容器。
在线搜索了一下,我在项目存储库中发现了一个关于 here 的问题。许多用户想到了修改 docker-compose.yml
文件以便挂载他们需要的文件夹的可能性。
然而,Docker 已经提供了一种覆盖 docker 撰写文件的方法。正确的方法是创建一个 docker-compose.override.yml
文件。
上面粘贴的配置允许在 docker 中安装主机用户主文件夹。事实上,您可以在 Docker 家找到您的 home
文件夹。
可以通过shell文件
查看进入Docker环境的效果
$ cd devilbox
$ ./shell.sh # or .bat
$ ls /home
devilbox/ yourusername/
然后指向 /home/yourusername/custompath
的每个符号链接都按预期工作!
Laravel public 文件夹
如果您只是想创建一个将 public 文件夹映射到 htdocs 的符号链接,您可以使用 Devilbox Setup Laravel.
提供的指南
@marcogmonteiro 在评论中谈到了这一点。但是,此方法仅适用于符号链接不在 Docker 可见树之外的文件或文件夹。
重要免责声明
这种将您的主文件夹装载到 Docker 的方式打破了容器与您的文件和文件夹之间的隔离。因此,Docker 容器可以 read/write/execute 你的文件。
有没有使用符号 link 将自定义文件夹添加到 Devilbox 的数据文件夹中? 当我放置符号 link 时,自动虚拟主机会忽略该文件夹。
谢谢。
好的,我成功了。为了将来参考,手动制作所有根文件夹,但接受根文件夹内部的符号链接。
data/www/proj-slug/{htdocs} width {htdocs} -> ~/git/proj-slug
我曾经遇到过完全相同的问题,但我已经解决了。
TL;DR;解决方案:
在 devilbox 项目的根目录中创建一个名为
的新文件docker-compose.override.yml
将其复制并粘贴到文件中
# IMPORTANT: The version must match the version of docker-compose.yml
---
version: '2.3'
services:
php:
volumes:
- $HOME:$HOME
httpd:
volumes:
- $HOME:$HOME
- 现在您可以创建符号链接,例如
data/www/proj-slug/htdocs -> ~/your-custom-path
说明
关注@Pirex360 的回复还不足以使用符号链接。实际上,当您创建符号链接时,vhost 页面会显示“没有 htdocs 文件夹”。
问题在于 Devilbox 中的所有内容都已“Docker 化”,因此您的 Docker 容器无法访问未安装在 Docker 中的文件和文件夹容器。
在线搜索了一下,我在项目存储库中发现了一个关于 here 的问题。许多用户想到了修改 docker-compose.yml
文件以便挂载他们需要的文件夹的可能性。
Docker 已经提供了一种覆盖 docker 撰写文件的方法。正确的方法是创建一个 docker-compose.override.yml
文件。
上面粘贴的配置允许在 docker 中安装主机用户主文件夹。事实上,您可以在 Docker 家找到您的 home
文件夹。
可以通过shell文件
查看进入Docker环境的效果$ cd devilbox
$ ./shell.sh # or .bat
$ ls /home
devilbox/ yourusername/
然后指向 /home/yourusername/custompath
的每个符号链接都按预期工作!
Laravel public 文件夹
如果您只是想创建一个将 public 文件夹映射到 htdocs 的符号链接,您可以使用 Devilbox Setup Laravel.
提供的指南@marcogmonteiro 在评论中谈到了这一点。但是,此方法仅适用于符号链接不在 Docker 可见树之外的文件或文件夹。
重要免责声明
这种将您的主文件夹装载到 Docker 的方式打破了容器与您的文件和文件夹之间的隔离。因此,Docker 容器可以 read/write/execute 你的文件。