我已经使用命令安装了docker-compose

Sudo apt安装docker-compose

它安装了docker-compose版本1.8.0和build unknown

我需要docker-compose的最新版本或至少1.9.0版本

任何人都可以让我知道我应该采取什么方法来升级它或卸载并重新安装最新版本。

我已经检查了docker网站,可以看到他们推荐安装最新版本'

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

但在此之前,我必须卸载当前版本,这可以使用命令来完成

执行rm /usr/local/bin/docker-compose

但是这只能在使用curl完成安装时使用。我不确定安装是否像我使用的那样由curl完成

Sudo apt安装docker-compose

请让我知道我现在应该做什么来卸载和重新安装docker-compose。


当前回答

分三步做。(显示apt-get安装)

卸载最后一个。例如,apt-get安装

Sudo apt-get remove docker-compose

安装新版本(https://docs.docker.com/compose/install/)

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

然后

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

检查你的版本

docker-compose——版本

其他回答

如果你有自制软件,你也可以通过brew安装

$ brew install docker-compose

这是在Mac OS系统上安装的好方法

这些解决方案大多已经过时,或者让您安装旧版本。 安装最新版本

sudo apt  install jq

DOCKER_COMPOSE_VERSION=$(curl --silent https://api.github.com/repos/docker/compose/releases/latest | jq .name -r)

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

在研究了很多方法之后,我最终使用了jq,希望我可以扩展它来处理Docker-Compose之外的其他回购,而不需要太多的工作。

# If you have jq installed this will automatically find the latest release binary for your architecture and download it
curl --silent "https://api.github.com/repos/docker/compose/releases/latest" | jq --arg PLATFORM_ARCH "$(echo `uname -s`-`uname -m`)" -r '.assets[] | select(.name | endswith($PLATFORM_ARCH)).browser_download_url' | xargs sudo curl -L -o /usr/local/bin/docker-compose --url

如果你安装了pip,升级你可以使用:

 pip install --upgrade docker-compose

或者像Mariyo在pip3中明确指出的那样:

 pip3 install --upgrade docker-compose

在url中使用latest标志将重定向到回购的最新版本

由于操作系统名称在github的文件名中是小写,您应该使用sed -e 's/\(.*\)/\L\1/'将uname -s转换为小写。

sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s|sed -e 's/\(.*\)/\L\1/')-$(uname -m)" -o /usr/local/bin/docker-compose && sudo chmod +x /usr/local/bin/docker-compose