首页 > 解决方案 > 无法从 docker-compose 启动 docker Container - “未知标志:--iidfile”

问题描述

当我尝试运行“docker-compose up”时,命令提示符会引发以下错误:

$ docker-compose up
Building tomcat
unknown flag: --iidfile
See 'docker build --help'.
ERROR: Service 'tomcat' failed to build

下面是 Dockerfile 和 docker-compose.yml 文件:

$ cat Dockerfile.dev
FROM node:alpine

WORKDIR '/app'

COPY package.json .
RUN npm install
COPY . .

CMD ["npm", "run", "start"] `

$ cat docker-compose.yml
version: '3'
services:
  tomcat:
    restart: always
    build:
      context: .
      dockerfile: Dockerfile.dev
    ports:
      - "3000:3000"
    volumes:
      - /app/node_modules
      - .:/app
  tests:
    restart: always
    build:
      context: .
      dockerfile: Dockerfile.dev
    volumes:
      - /app/node_modules
      - .:/app
    command: ["npm", "run", "test"]

我在 Dockerfile 或 docker-compose.yml 中有什么错误配置吗?

标签: node.jsdockerdocker-composealpinedocker-image

解决方案


我在使用 docker-compose 1.29.1 时遇到了同样的问题。降级到 docker-compose 1.26.2 解决了这个问题。

重新安装 docker-compose 1.26.2

rm -f /usr/local/bin/docker-compose
curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose

推荐阅读