我已经使用命令安装了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。
这是安装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
首先,删除旧版本:
如果通过apt-get安装
sudo apt-get remove docker-compose
如果通过curl安装
sudo rm /usr/local/bin/docker-compose
如果通过pip安装
pip uninstall docker-compose
然后在GitHub的发布页面上找到最新版本,或者通过卷曲API并使用grep或jq从响应中提取版本(感谢dragon788, frbl和Saber Hayati的这些改进):
# curl + grep
VERSION=$(curl --silent https://api.github.com/repos/docker/compose/releases/latest | grep -Po '"tag_name": "\K.*\d')
# curl + jq
VERSION=$(curl --silent https://api.github.com/repos/docker/compose/releases/latest | jq .name -r)
最后,下载到您最喜欢的$ path可访问的位置,并设置权限:
DESTINATION=/usr/local/bin/docker-compose
sudo curl -L https://github.com/docker/compose/releases/download/${VERSION}/docker-compose-$(uname -s)-$(uname -m) -o $DESTINATION
sudo chmod 755 $DESTINATION
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的官方安装说明。
我试图在“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