Windows环境下基础Docker Compose示例报TypeError求助
解决Docker Compose构建时的「TypeError: You must specify a directory to build in path」错误
兄弟,问题的根源其实特别简单——你执行的命令写错了!
你现在运行的是:
docker-compose up .
但正确的命令应该是:
docker-compose up
为什么会报错?
docker-compose up命令不需要额外指定目录参数,它会自动在当前工作目录下查找docker-compose.yml文件,并按照配置里的规则执行构建和启动。你多加的那个.会被当成错误的参数传递给内部构建逻辑,导致程序混淆了参数格式,才抛出了「必须指定构建目录路径」的错误。
而你之前单独执行docker build .能成功,是因为docker build命令确实需要指定构建上下文目录(也就是那个.),但这和docker-compose up的逻辑完全不同。
修复步骤
- 确保你的PowerShell当前工作目录是你的测试目录(包含
docker-compose.yml的那个目录) - 执行正确的启动命令:
# 前台运行,可查看实时日志 docker-compose up # 或者后台运行服务 docker-compose up -d
额外验证
你之前尝试的那些配置修改(比如显式设置context: .和dockerfile: Dockerfile)其实都是正确的,只是因为命令里多余的.一直干扰执行,现在换正确命令后,这些配置都能正常工作。而且你提到Mac上能正常运行,大概率是因为在Mac上你执行了正确的docker-compose up命令,没有多加那个多余的点。
内容的提问来源于stack exchange,提问作者Emil Terman
相关产品推荐
相关产品推荐

