我已经使用命令安装了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。


当前回答

如果你尝试sudo apt-get remove docker-compose并得到E: Unable to locate package docker-compose,请尝试以下方法:

这个命令必须返回一个结果,以便检查它是否安装在这里:

ls -l /usr/local/bin/docker-compose

删除旧版本:

sudo rm -rf docker-compose

下载最新版本(查看官方repo: docker/compose/releases):

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

(如有需要,替换1.24.0)

最后,对二进制文件应用可执行权限:

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

检查版本:

docker-compose -v

其他回答

我试图在“Ubuntu 16.04.5 LTS”上安装docker-compose,但安装后像这样:

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

我得到:

-bash: /usr/local/bin/docker-compose:拒绝权限

当我使用它与sudo我得到:

Sudo: docker-compose:命令不存在

下面是我解决问题的步骤:

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

为Docker Compose安装提供永久和可持续的解决方案以及升级它的最简单的方法是使用包管理器pip with:

pip install docker-compose

我正在为“如何升级到最新版本号”这个丑陋的问题寻找一个好的解决方案,这个问题出现在你阅读官方文档之后-只是偶尔发现它-看看Docker - Compose pip包-它应该反映(大部分)最新发布的Docker Compose版本的当前编号。

如果涉及到管理软件安装,包管理器总是最好的解决方案!所以你可以从自己处理的版本中抽象出来。

在我的情况下,使用Windows + WSL2和Ubuntu 20.04,只需要这样:

Sudo apt更新

然后:

Sudo apt升级

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

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

从命令行使用:sudo curl - l "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)"- o /usr/local/bin/docker-compose

写下最新版本

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

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

然后测试版本:

$ docker-compose --version