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


当前回答

使用更新的Mac 3.3.0 Docker Desktop,你不需要将Docker Compose作为一个单独的包安装。Docker Compose作为Docker默认安装的一等公民。看看下面的CLI:


docker compose version
Docker Compose version 2.0.0-beta.1%

其他回答

Docker引擎和Docker撰写插件

自从微软接管Docker后,他们一直致力于将Docker -compose移植到Docker Engine CLI插件中。对于未来的支持和更新,我建议使用docker compose plugin(注意没有破折号),它可以通过docker-compose-plugin包安装。以下说明假设您使用Ubuntu作为发行版或任何使用apt作为包管理器的发行版。

安装准备工作

更新你的镜像:

sudo apt-get update

请确保已安装以下软件包:

sudo apt-get install \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

之后添加官方Docker GPG Key:

sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

最后添加稳定库:

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

同时确保安装了Docker引擎和其他需要的依赖项:

sudo apt-get install docker-ce docker-ce-cli containerd.io

安装docker合成插件

sudo apt-get install docker-compose-plugin

插件的任何未来更新都可以通过apt轻松应用。 为了进一步参考,请查看Docker Engine和Docker Compose的官方安装说明。

如果以上方法对你不起作用,那么参考这个答案:https://stackoverflow.com/a/40554985

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

我试图在“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版本的当前编号。

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

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

 pip install --upgrade docker-compose

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

 pip3 install --upgrade docker-compose