将 `docker compose`(是 docker 命令的子命令 compose)安装给所有用户
概述
本文介绍了如何将 Docker Compose(Docker Compose 概述 | Docker 文档)安装给所有用户,而不是在 Linux 上使用 docker-compose。
以原文标题所述,方法也是完全照搬官方文件。
同时还有一些遇到问题而不去按照原文行事的例子备忘录。
安装方法
如果要为每个用户安装,可以创建 $HOME/.docker/cli-plugins 目录,并将 docker-compose 放置其中。
如果要为所有用户安装,可以创建 /usr/local/lib/docker/cli-plugins 目录,并将 docker-compose 放置其中。
mkdir -p ~/.docker/cli-plugins/
curl -SL https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose
chmod +x ~/.docker/cli-plugins/docker-compose # 実行権限の付与
# 全ユーザ向け
mkdir -p /usr/local/lib/docker/cli-plugins
curl -SL https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-linux-x86_64 -o /usr/local/lib/docker/cli-plugins/docker-compose
chmod +x /usr/local/lib/docker/cli-plugins/docker-compose # 実行権限の付与
可以通过版本来确认。
$ docker compose version
Docker Compose version v2.2.2
$ /usr/local/lib/docker/cli-plugins/docker-compose version
Docker Compose version v2.2.2
公式文档中的“手动安装插件”部分保持不变。
摔倒的例子 de lì zi)
指定给所有用户安装路径的是`/usr/local/lib/docker/cli-plugins/docker-compose`,而不是`/usr/local/bin/docker-compose`。
$ /usr/local/bin/docker-compose version
Docker Compose version v2.2.2
$ docker-compose version
Docker Compose version v2.2.2
$ docker compose version
docker: 'compose' is not a docker command.
由于PATH已设置正确,docker-compose将成功运行。
由于docker-compose缺少插件目录,它将失败。
由于我错误地认为已经成功安装了docker-compose,导致浪费了一些时间。