我已经在CentOS 7上安装了docker,运行如下命令:

curl -sSL https://get.docker.com/ | sh
systemctl enable docker && systemctl start docker
docker run hello-world

注意:helloworld运行正常,没有问题。

然而,当我试图运行docker-compose (docker-compose。yml存在并且有效)它只在CentOS上给了我错误(Windows版本的docker-compose文件工作良好)

/usr/local/bin/docker-compose: line 1: {error:Not Found}: command not found

当前回答

如果你通过将docker的官方存储库添加到存储库列表来安装docker,如下所示:

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

只做:

$ sudo apt-get install docker-compose

对于基于RHEL的发行版/ Fedora:

$ sudo dnf install docker-compose

其他回答

如果你用的是ubuntu, docker compose可以工作,但docker-compose不行,你需要旧的docker-compose语法可用(可能第三方库使用它),你可以通过以下步骤修复它:

docker-compose插件可能安装在/usr/libexec/docker/cli-plugins/docker-compose(确保它是)

创建一个符号链接到它:

sudo ln -s /usr/libexec/docker/cli-plugins/docker-compose /usr/bin/docker-compose

现在docker-compose应该可用了

更新:

如果docker-compose在上述路径中找不到,您可以从您的操作系统的发布页面手动下载它,然后移动下载的文件并使其可执行。

cd ~/Downloads
sudo mv ./docker-compose-* /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

只需使用brew:

brew install docker-compose

在Linux上,您可以从GitHub上的Compose存储库发布页面下载Docker Compose二进制文件。按照链接中的说明操作,其中包括在终端上运行curl命令来下载二进制文件。这些分步指导也包括在下面。

1:执行此命令下载Docker Compose当前稳定版本:

sudo curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

若要安装不同版本的Compose,请将1.26.2替换为您想使用的Compose版本。

2:应用可执行权限的二进制文件:

sudo chmod +x /usr/local/bin/docker-compose

注意:如果安装后命令docker-compose失败,请检查 你的路。您还可以创建到/usr/bin或任何的符号链接 路径中的其他目录。

官方文件显示:

如果您为Windows或Mac安装了Docker Desktop/Toolbox,则您需要 已经有Docker Compose!Play-with-Docker实例已经有了 Docker Compose也安装了。如果您使用的是Linux机器,那么您 需要安装Docker Compose。

为此,您需要参考预先存在的Docker安装部分。

安装docker并不意味着你已经安装了docker-compose。它有一个先决条件,那就是你已经安装了docker引擎。之后,你可以按照这个链接为Centos 7安装docker-compose。