运行 docker compose 时出现“docker: 'compose' 不是 docker 命令”

Fli*_*lik 10 docker docker-compose

在我的 M1 Mac pro 上安装最新版本的 Docker Desktop 后,尽管安装了所有正确的文件,但我似乎无法运行 docker compose。

我尝试在终端中运行docker-composedocker compose收到以下消息:docker: 'compose' is not a docker command.

运行后docker --version,我目前处于Docker version 20.10.21, build baeda1f

Compose 已正确添加到我的 PATH 变量中/usr/local/bin/,其中包含以下文件:

com.docker.cli          docker-credential-desktop       fuzzy_match         kubectl.docker
docker                  docker-credential-ecr-login     httpclient          vpnkit
docker-compose          docker-credential-osxkeychain   hub-tool            xcodeproj
docker-compose-v1       docker-index                    kubectl
Run Code Online (Sandbox Code Playgroud)

当我运行时which docker-compose,它返回/usr/local/bin/docker-compose,所以看起来一切都配置正确。

此外,跑步docker-compose-v1似乎确实因某些奇怪的原因而起作用。

有任何想法吗?

编辑:似乎在安装最新版本的 Docker(Docker Desktop 4.14.1 (91661)、Docker 版本 20.10.21、build baeda1f)后已修复此问题。

Rod*_*ira 6

使用 来安装 Rosetta 2 softwareupdate --install-rosetta,然后在 Docker Dashboard -> 设置 -> 常规中取消选中使用 Docker Compose V2 。

  • 您可能已经知道,“docker compose”是召唤新的基于 Go 的 Docker Compose V2 的命令。我认为 Apple M1 上的 Docker Desktop 4.14.0 (91374) 版本存在某种临时问题(我遇到了与您相同的问题。)我能找到的最快解决方案是暂时恢复到 V1,这需要 Rosetta 。直到几天前,我还能够在我的 M1 上完美运行 V2,所以我希望 Docker 开发向导能够尽快解决这个问题。 (3认同)