docker-compose.yml无效:app.build包含无效类型,它应该是一个字符串

时间:2016-12-01 18:18:20

标签: string docker docker-compose

如果我的$ docker-compose up如下所示,当docker-compose.yml运行时,一切都按预期运行:

app:
  build: . 

但是当我docker-compose.yml为{docker-compose reference时似乎有效时):

app:
  build:
    context: .

我收到以下错误:

$ docker-compose up
ERROR: The Compose file './docker-compose.yml' is invalid because:
app.build contains an invalid type, it should be a string

我也试过context: "."没有快乐。请帮忙!非常感谢。

1 个答案:

答案 0 :(得分:27)

您使用的格式是Version 2。您目前使用的是Version 1格式。

对于版本1,Docker Compose需要一个字符串:

app:
  build: .

对于版本2,Docker Compose expects a string or object,但您必须指定Docker Compose文件是版本2:

version: '2'
services:
  app:
    build:
      context: .