Docker-compose:/usr/local/bin/docker-compose:第 1 行:Not:找不到命令

Posted

技术标签:

【中文标题】Docker-compose:/usr/local/bin/docker-compose:第 1 行:Not:找不到命令【英文标题】:Docker-compose: /usr/local/bin/docker-compose : line 1: Not: command not found 【发布时间】:2020-03-03 23:36:31 【问题描述】:

我正在尝试在安装了 Raspbian buster 的 Raspberry Pi 3+ 上安装 Docker-compose。 我按照docker.com 的说明进行操作。在我输入命令后:sudo curl -L https://github.com/docker/compose/releases/download/1.20.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose。 它显示了一个用于下载的表格

Result

似乎没有下载任何东西,只是在/usr/local/bin/docker-compose 中保存了一个文件docker-compose。当我打开它时,它是空的。然后我输入命令docker-compose -v,它显示错误/usr/local/bin/docker-compose : line 1: Not: command not found。 谁有解决办法?

【问题讨论】:

【参考方案1】:

简介:

虽然docker-compose 可以根据接受的答案从回购中安装,apt-cache show docker-compose 显示截至 20211201 回购版本仅为 v1.25;比当前的 v2.1.1 版本晚了大约 2 年。所以我需要让 Docker 的命令正常工作。

简答:

Docker documentation for Docker-Compose 是错误的。他们忘记在命令中以“v”开头的版本号;因此下载失败。显然这已经错了很久......

更长的答案:

我从 Docker-Compose 文档中运行了以下命令,并根据 Docker 的指导将版本“2.1.1”替换为“1.29.1”:

要安装不同版本的 Compose,请将 1.29.2 替换为 您要使用的 Compose 版本。

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

23 MB 二进制文件的下载结果为 9 KB。显然链接是伪造的。所以我转到命令“https://github.com/docker/compose/releases”中使用的地址的根目录,然后右键单击我想要的 Docker-Compose 版本并选择“复制链接地址"

这表明 Docker 告诉人们使用的链接在命令的 https:// 地址部分的版本号之前没有“v”前缀。

解决方案:

如下链接中你想要的版本号前加上“v”,命令执行成功:

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

顺便说一句,我也在使用 Ubuntu 20.04 LTS 的 aarch64 二进制文件为 Raspberry Pi 下载 docker-compose。但是,针对损坏的下载地址缺少的“v”修复程序应该适用于任何平台。

【讨论】:

感谢十亿拯救了我的一天 不要忘记为您认为有用的答案投票。 非常感谢,您节省了时间,缺少 v 是问题 没问题!就像我从其他人回答问题中受益一样,我试图避免其他技术人员浪费时间重复解决相同的问题。很高兴能帮助您,感谢您的积极反馈! 完美,谢谢【参考方案2】:

这是因为在树莓派上,命令的 url 部分会导致

https://github.com/docker/compose/releases/download/1.24.1/docker-compose-Linux-armv7l

查看https://github.com/docker/compose/releases/tag/1.24.1 的最新稳定版本,您会看到armv7l 架构没有下载,因此文件为空,因为没有可下载的内容。

一旦我弄清楚如何在 Raspian 上安装 docker-compose,将更新答案。

编辑:

通过apt-get。注意:目前(2019 年 11 月 8 日)这会安装 1.21 版本,这不是最新的可用版本。

sudo apt-get install docker-compose

通过pip3。 (最新安装)

sudo apt-get install python3-pip
sudo pip3 install docker-compose

然后用

重启你的系统
sudo shutdown -r

【讨论】:

感谢代表。我尝试通过 2 种方式安装,但没有成功,它显示 sudo: docker-compose: command not found。但是当我输入没有sudo的命令时,终端显示bash: /usr/local/bin/docker-compose: permission denied。我去这个文件夹,它是空的。看来docker-compose的路径不准确,但我不知道docker compose的真实路径在哪里。 如果您还处于安装初期,我建议您简单地重新安装 Raspian,因为您之前的修改可能破坏了 PATH 变量。 是的,我确实重新安装了 Raspian,它确实有效。我忘了给你更新XD

以上是关于Docker-compose:/usr/local/bin/docker-compose:第 1 行:Not:找不到命令的主要内容,如果未能解决你的问题,请参考以下文章

安装docker-compose

安装docker-compose

安装docker-compose

docker-compose安装

docker-compose安装

安装docker-compose