我当前运行的是Docker桌面版本20.10.22(内部版本3a2c30b,全新安装),在Windows上(使用wsl2),但是带有-f
标志的docker compose
命令无法正常工作。(在Docker桌面设置中选中该选项),我的命令带有空格而不是连字符。使用-f
运行任何docker compose
命令时,我收到以下消息:
未知的速记标志:'f' in-f参见' Docker -帮助'.
具体来说,我运行的是FIWARE NGSI-LD tutorials。这些教程中使用的所有docker compose命令都失败。可以在每个教程的services
文件中找到这些命令。例如,Short-Term-History tutorial中失败的命令(表示-f
标志不存在)如下:
docker compose -f docker-compose/mintaka.yml -p fiware up -d --remove-orphans --renew-anon-volumes
奇怪的是,docker compose --help
和docker compose --version
都返回了docker --help
和docker --version
的输出,就好像它排除了compose
关键字。上面命令的输出还引用了标准的docker help命令,而不是docker compose help。
- 更新:Docker排除了docker和命令其余部分之间的
compose
关键字。用随机字母字符串替换compose会产生相同的效果。看起来它无法识别compose
关键字。**
- 更新:Docker排除了docker和命令其余部分之间的
未安装旧的docker-compose
,因此也不起作用。运行which docker-compose
将返回docker-compose.exe
的位置,位于.../Docker/resources/bin
文件夹中。运行which docker compose
将返回docker.exe
的位置。.../Docker/resources/bin
文件夹位于path环境变量中。
有人知道这个问题是什么吗?我已经搜索了无数的网站,但没有找到任何解决这个问题的方法。
此致
2条答案
按热度按时间fjnneemd1#
下面是我运行
docker compose events
时运行进程的结果:请检查您是否有所有这些目录和文件。然后我们可以进一步排除故障。
ars1skjm2#
我用相同的安装程序(也是相同的版本)重新安装了Docker Desktop,这很奇怪地解决了这个问题。
我的旧安装和新安装之间的唯一区别是,这次我已经安装了wsl2。