【发布时间】:2020-02-16 17:21:16
【问题描述】:
一个网站(没有作曲家,否则我会在那里做)在容器内有几个符号链接,这是它工作所必需的。
我如何告诉 ddev 在ddev start 上创建这些符号链接?
我确定它就在我眼前,但我找不到。谷歌什么也没给我,也许答案太明显了?首次运行时使用ln -s?
【问题讨论】:
标签: ddev
一个网站(没有作曲家,否则我会在那里做)在容器内有几个符号链接,这是它工作所必需的。
我如何告诉 ddev 在ddev start 上创建这些符号链接?
我确定它就在我眼前,但我找不到。谷歌什么也没给我,也许答案太明显了?首次运行时使用ln -s?
【问题讨论】:
标签: ddev
首先,我可能会在我的 repo 中创建符号链接并将其签入 git。这在 Windows 上会出现问题(但符号链接在 Windows 上通常是有风险的)。
您需要使用 relative 符号链接,以便可以在容器内或主机上遵循相对路径。
因此,如果必须,请使用带有 exec 的启动后挂钩(在 Web 容器中执行此操作):
hooks:
post-start:
- exec: ln -sf ../vendor/bin/behat behat
或者(特别是如果您不在 Windows 上)您也可以在主机上使用 pre-start 或 post-start 挂钩:
hooks:
pre-start:
- exec-host: ln -sf ../vendor/bin/behat behat
请注意,Web 容器中exec 的默认目录不一定是项目根目录,它可能是 docroot(与 Drupal 一样)。
【讨论】:
exec: ln -sfn(带有无取消引用标志)听起来像是重复使用的合适选项。在 WEB 容器中。