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


当前回答

在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

其他回答

在mac上(也适用于ubuntu):

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

注意:写在这里: https://github.com/docker/compose/releases

如果你尝试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

这是安装docker compose 2.12.x版本的方法

更新debian包管理器

# apt-get update
# apt-get install docker-compose-plugin

然后手动安装插件

 DOCKER_CONFIG=${DOCKER_CONFIG:-$HOME/.docker}
 mkdir -p $DOCKER_CONFIG/cli-plugins
 curl -SL https://github.com/docker/compose/releases/download/v2.12.2/docker-compose-linux-x86_64 -o $DOCKER_CONFIG/cli-plugins/docker-compose

给予文件执行的许可

chmod +x $DOCKER_CONFIG/cli-plugins/docker-compose

最后一次安装测试

docker compose version
// Docker Composer Version v2.12.2

我的案子很奇怪。我使用wsl2和Docker Desktop (Windows 11)。在将文件夹“docker”重命名为“config-dev-server”并像这样更新Dockerfile后,我停止得到这个错误:

COPY ./docker/apache/apache2.conf /etc/apache2/apache2.conf

to

COPY ./config-dev-server/apache/apache2.conf /etc/apache2/apache2.conf

在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