启动Apache Superset报错:services.superset-node.env_file.0 must be a string
解决Superset Docker启动错误:
services.superset-node.env_file.0 must be a string 问题原因
这个错误源于你使用的Docker Compose版本(对应Docker 20.10.22的Compose版本偏旧)不兼容当前docker-compose.yml中superset-node服务的env_file配置语法,旧版本无法解析配置里的复杂数组项格式。
修复步骤
- 打开克隆的Superset仓库中的
docker-compose.yml文件,定位到services.superset-node配置块。 - 找到
env_file字段,根据现有格式调整:- 如果是带嵌套结构的写法:
直接修改为字符串形式:env_file: - target: .env-nodeenv_file: .env-node - 如果需要加载多个环境文件,确保每个文件路径都是字符串数组项:
env_file: - .env-node - .env-other
- 如果是带嵌套结构的写法:
- 保存修改后的文件,重新执行启动命令:
docker compose up
补充说明
旧版本Docker Compose对env_file的语法支持有限,不允许在数组项中使用target这类键值对结构,换成直接指定文件路径的简单语法即可适配你的环境版本。
内容的提问来源于stack exchange,提问作者dfrankow
相关产品推荐
相关产品推荐

