node.js - 无法从 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 中有什么错误配置吗?
解决方案
我在使用 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
推荐阅读
- node.js - 节点 express.js API 第一次请求响应慢
- css - 如何在 React Native 中创建具有渐变颜色和图标的按钮?
- ruby - 有两个文本文件。我需要添加到第一个文件中,在指定编号 n 的行之后,第二个文件的内容
- sql - 请我需要选择行驶公里数大于 1000 的城市呼叫
- c - Linux /dev/input/event*:丢失鼠标移动事件
- amazon-dynamodb - 无效的FilterExpression:表达式包含的运算符太多;运营商数量:301
- node.js - 如何为我的后端创建团队的事件模型?
- laravel - Larvel 8 :- 数组到字符串的转换
- r - 如何选择数据框中的列,并跳过不存在的列 - 使用 data.table 语法
- reactjs - 反应中 MDBInput 的自定义高度