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

其他回答

以上的解决方案对我不起作用。但我发现这个很管用:

sudo apt-get update -y && sudo apt-get install -y python3-pip python3-dev
sudo apt-get remove docker docker-engine docker.io
curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo pip3 install docker-compose
#sudo docker-compose -f docker-compose-profess.yml pull ofw
sudo usermod -a -G docker $USER
sudo reboot

我正在安装树莓派3和树莓8。curl方法对我来说失败了(得到了第一行:Not:命令没有在请求docker-compose——version时发现错误),@sunapi386的解决方案似乎有点过时,所以我尝试了这个工作:

首先清理之前的工作:

sudo rm /usr/local/bin/docker-compose
sudo pip uninstall docker-compose

然后在Rpi上遵循以下指导:

sudo apt-get -y install python-pip
sudo pip install docker-compose

对我来说(2017年11月1日),这导致了以下对docker-compose——version的响应:

docker-compose version 1.16.1, build 6d1ac219

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

2022年5月更新

自2022年4月以来,docker compose V2是GA,现在它是docker桌面的一部分。你可以在这里看到所有相关信息。 Compose V1现在被标记为已弃用。

最初的回答:

Docker compose v1是一个单独的安装。要安装v1,请遵循此处的说明。

Docker compose v2目前是一个单独的安装,但当它准备好时,它将集成到Docker中。它被认为是一个docker插件。在这个时候,如果你想要docker撰写v2,因为这个提交你可以做:

sudo apt update \
&& sudo apt install docker-compose-plugin

用apt或相当于yum的词。这将以插件的形式安装新的docker compose V2。

对于Ubuntu操作系统有很多建议,但我认为最简单的解决方案是创建一个别名。(如果docker compose已经安装)

步骤:

Ls -la在~目录中查看是否有.bash_aliases 如果不直接创建它(触摸,纳米…或者简单地使用gedit) gedit .bash_aliases (以上步骤可以跳过,只需在.bashrc中添加你的别名) 添加别名别名docker-compose="docker compose" 使别名在当前会话中可用:source ~/.bashrc