Docker Compose v3运行报错不支持container-name配置项该如何排查
报错原因
你遇到的报错是配置项拼写错误导致的:Docker Compose V3 规范中,自定义容器名称的字段为container_name(使用下划线连接),你在content、interaction、user三个服务中错误写为了container-name(中划线连接),所以触发了不支持配置项的报错,你编写的mongo服务使用了正确的下划线写法,因此没有针对mongo服务的同类报错。
直接将三个服务中的container-name全部替换为container_name即可解决当前问题,修改后的对应服务配置参考如下:
content: container_name: content restart: always build: ./Content ports: - '3000:3000' external_links: - mongo
其他需要排查的点
- 确认本地Docker Compose版本满足V3规范要求:Docker Compose 1.10.0及以上版本才支持V3格式的Compose文件,你可以执行
docker-compose version命令查看当前版本,低于要求版本需升级。 - 排查文件隐藏格式问题:复制教程代码时可能带入全角符号、不可见空白字符等异常内容,可手动重新输入异常字段排查这类问题。
- 确认Compose运行模式兼容:如果你使用的是Docker Compose V2(即
docker compose命令而非旧版的docker-compose命令),确认V3格式兼容配置为开启状态,默认场景下该兼容是默认生效的,仅极少数自定义配置场景需要额外调整。 - 避免混用不同版本的Compose配置规则:V2版本的部分配置字段和V3存在差异,不要跨版本混用写法。
内容的提问来源于stack exchange,提问作者Altair21
相关产品推荐
相关产品推荐

