我已经在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

其他回答

如果docker-compose已经存在于/usr/local/bin中:

ls -alt /usr/local/bin/ | grep docker-compose
> lrwxr-xr-x    1 root     wheel        77 Mar 11 10:39 docker-compose -> /Applications/Docker.app/Contents/Resources/bin/docker-compose/docker-compose

最后用/usr/local/bin更新你的.bash_profile路径:

export PATH="$HOME/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:$PATH:/usr/local/bin"

Run:

source ~/.bash_profile

并检查:

echo $PATH
> ...
which docker-compose
> /usr/local/bin/docker-compose
docker-compose

在Amazon Linux中,如果您将使用哪个docker-compose

您将得到以下错误

[root@ip bin]#哪个docker-compose

no docker-compose in (/sbin:/bin:/usr/sbin:/usr/bin)

只需mv docker-compose从/usr/local/bin到/usr/bin

[root@ip bin]# mv docker-compose /usr/bin

[root@ip bin]#哪个docker-compose

/ bin / sh docker-compose

[root@ip-172-31-36-121 bin]# docker-compose——version

Docker-compose版本1.29.2,构建未知

我建议在Mac上使用官方pkg。我猜docker-compose默认情况下不再包含在docker中:https://docs.docker.com/toolbox/toolbox_install_mac/

如果你用的是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

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