docker-compose up构建报错:Dockerfile路径配置问题咨询
问题分析与解决
你的判断方向有误,不是找不到目录,而是**build字段的用法错误**引发的问题。
在docker-compose.yml中,build字段默认接收的是构建上下文目录的路径,而非直接指定Dockerfile文件。你现在直接写./my-frontend-app.Dockerfile,Docker会把这个文件路径当作目录去尝试遍历,自然会报错“not a directory”。
正确写法
如果你的Dockerfile不在默认位置(默认是上下文目录下的Dockerfile),需要用context指定构建上下文目录,dockerfile指定具体文件名:
version: '3.9' services: web-app: build: context: ./ # 填写Dockerfile所在的目录,当前目录就写./ dockerfile: my-frontend-app.Dockerfile ports: - "4200:4200"
或者若Dockerfile和docker-compose.yml在同一目录下,也可简化为:
version: '3.9' services: web-app: build: . dockerfile: my-frontend-app.Dockerfile ports: - "4200:4200"
这样Docker就能正确找到指定的Dockerfile并完成构建。
内容的提问来源于stack exchange,提问作者Daniel
相关产品推荐
相关产品推荐

