You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

DDEV环境下Drupal 8主题如何访问容器外的logo.svg文件

问题原因及解决方案

1. 手动执行docker run命令失败的原因

你执行的命令存在两个问题:

  • 挂载规则不完整:-v参数的格式为本地路径:容器内路径,你只写了本地路径加冒号和根目录/,没有指定容器内的目标路径
  • 缺少镜像参数:docker run命令末尾必须指定要启动的容器镜像名称,你没有填写该参数,因此触发参数不足的报错
    另外需要注意:手动执行docker run启动的是独立容器,和DDEV管理的web服务容器完全隔离,就算命令执行成功也无法解决DDEV环境下的logo加载问题。

2. DDEV环境下的正确处理方案

正常情况下DDEV默认已经将整个项目根目录挂载到了web容器的/var/www/html路径下,不需要额外配置挂载,建议先优先排查路径问题:

  • 将preview.html中的相对路径./../logo.svg替换为绝对路径/themes/custom/jazzy_theme/logo.svg测试是否可以正常加载
  • 如果是twig模板文件,可以使用Drupal的路径变量生成地址:{{ path('<front>') }}themes/custom/jazzy_theme/logo.svg

如果确认是挂载规则缺失导致的问题,按照DDEV的规范配置自定义挂载即可,不需要手动操作docker命令:

  1. 在项目根目录的.ddev文件夹下新建docker-compose.override.yaml文件,写入以下内容:
version: '3.6'
services:
  web:
    volumes:
      - "/Users/soren/Sites/drupal/unitynet.dk/web/themes/custom/jazzy_theme/logo.svg:/var/www/html/web/themes/custom/jazzy_theme/logo.svg"
  1. 执行ddev restart重启DDEV服务,配置即可生效

3. 验证方法

重启完成后执行ddev ssh进入web容器,进入/var/www/html/web/themes/custom/jazzy_theme/目录,查看是否存在logo.svg文件,存在则代表挂载正常,再访问颜色预览页面验证logo加载状态即可。


内容的提问来源于stack exchange,提问作者Søren Sjøstrøm

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 11:48:02