linux - 无法从 Alpine linux 上的边缘存储库安装 aws-cli
问题描述
我正在尝试从边缘存储库安装 aws-cli 但我不能
https://pkgs.alpinelinux.org/package/edge/community/x86_64/aws-cli
是操作系统版本的问题吗?( 3.11 / 3.12 )
如果是这样,有解决方法吗?
root@6f97c6559fe9:/ # echo http://dl-cdn.alpinelinux.org/alpine/edge/main >> /etc/apk/repositories
root@6f97c6559fe9:/ # apk update
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/community/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
v3.11.6-71-gb45d3b45cc [http://dl-cdn.alpinelinux.org/alpine/v3.11/main]
v3.11.6-68-gf6abc2afac [http://dl-cdn.alpinelinux.org/alpine/v3.11/community]
v3.12.0-442-g76e377ea0b [http://dl-cdn.alpinelinux.org/alpine/edge/main]
OK: 16123 distinct packages available
root@6f97c6559fe9:/ # apk add aws-cli
ERROR: unsatisfiable constraints:
aws-cli (missing):
required by: world[aws-cli]
root@6f97c6559fe9:/ # apk add --update aws-cli
ERROR: unsatisfiable constraints:
aws-cli (missing):
required by: world[aws-cli]
root@6f97c6559fe9:/ # cat /etc/os-release
NAME="Alpine Linux"
ID=alpine
VERSION_ID=3.11.3
PRETTY_NAME="Alpine Linux v3.11"
HOME_URL="https://alpinelinux.org/"
BUG_REPORT_URL="https://bugs.alpinelinux.org/"
解决方案
所以 Alpine 的包页面似乎确认它aws-cli
确实不是 Alpine 3.11 包存储库的一部分。
这就是说,您可以使用AWS自己的指令集来安装它,您只需要两者curl
并python
这样做。
对于 AWS CLI v1:
apk add python curl
curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"
unzip awscli-bundle.zip
./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws
来源:https ://docs.aws.amazon.com/cli/latest/userguide/install-linux.html#install-linux-bundled
遗憾的是,对于 AWS CLI v2,似乎尚不支持 Alpine:
nateprewitt 于 2 月 24 日发表评论
嗨@firstval,您似乎在#4685中找到了对此行为的回应。我们目前正在#3553中跟踪 Docker 支持,这将是此工作的先决条件。也就是说,我们绝对可以在返回异常的情况下做得更好。我们正在努力在我们的安装脚本中获得警告,以便在平台不受支持时提醒您。
我们将在#3553中跟踪剩余的高山支持。谢谢!
来源:https ://github.com/aws/aws-cli/issues/4971
进一步向下#3553:
- aws-cli 有一个官方的 docker 镜像:https ://hub.docker.com/r/amazon/aws-cli
- 有些人让它工作,但需要相当多的依赖项(你实际上需要 ac 编译器,看起来):https ://github.com/aws/aws-cli/issues/3553#issuecomment-615149941
这也可以解释为什么即使在 Alpine 3.12 上,实际的包安装版本1.xx而不是 2.xx 版本。
推荐阅读
- r - 循环遍历数据集的每 x 个列作为 R 中的一个组
- java - 是否有一种单行方式来编写相同的代码,但在 Java 8 中使用某种类型的可变映射?
- ruby-on-rails - 在引导模式中显示视图不加载数据
- python - 如何动态选择我在 Python 中打印的成员变量?
- javascript - Discord Collector 不收集 DM
- javascript - HTML按钮onclick属性不调用该函数,更改时行为奇怪
- python - 调用 __init__.py 中的模块与 python setup.py install 中断;导入 init 的模块依赖于尚未构建的扩展
- python - Beautifulsoup Python Youtube Scrape 不工作
- java - Kotlin/Java - 如何识别内部包?
- reactjs - 如何在不继续代码的情况下解决承诺