【发布时间】:2020-09-07 03:59:25
【问题描述】:
我正在运行 alpine 的 docker swarm 管理器节点上安装 aws-cli(Linux 0317632a4ad9 4.9.59-moby #1 SMP Thu Mar 1 20:54:00 UTC 2018 x86_64 Linux)。 Alpine 的 aws-cli 包目前列在边缘分支 (1.18.55.r0) 的社区 repo 中。我修改了/etc/apk/repositories 来定位这个仓库。
安装爆炸寻找 py3-urllib3,但我解决了这个问题,最后得到了一个干净的安装,没有错误,如下所示:
~ $ sudo apk add aws-cli@edge-comm
fetch http://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
ERROR: unsatisfiable constraints:
py3-urllib3-1.25.9-r0:
masked in: @edge
satisfies: py3-botocore-1.16.12-r0[py3-urllib3<1.26]
~ $ sudo apk add py3-urllib3@edge aws-cli@edge-comm
(1/23) Installing groff (1.22.3-r1)
(2/23) Installing py3-six (1.10.0-r6)
(3/23) Installing py3-dateutil (2.6.0-r1)
(4/23) Installing libpng (1.6.37-r0)
(5/23) Installing freetype (2.7.1-r2)
(6/23) Installing libjpeg-turbo (1.5.3-r2)
(7/23) Installing lcms2 (2.8-r1)
(8/23) Installing openjpeg (2.3.0-r2)
(9/23) Installing tiff (4.0.10-r0)
(10/23) Installing libwebp (0.6.0-r0)
(11/23) Installing py3-pillow (4.1.0-r0)
(12/23) Installing py3-roman (2.0.0-r2)
(13/23) Installing py3-docutils (0.13.1-r0)
(14/23) Installing py3-jmespath@edge-comm (0.9.5-r0)
(15/23) Installing py3-urllib3@edge (1.25.9-r0)
(16/23) Installing py3-botocore@edge-comm (1.16.12-r0)
(17/23) Installing py3-s3transfer@edge-comm (0.3.3-r0)
(18/23) Installing py3-colorama@edge-comm (0.4.3-r0)
(19/23) Installing yaml (0.1.7-r0)
(20/23) Installing py3-yaml (3.12-r1)
(21/23) Installing py3-asn1 (0.2.3-r0)
(22/23) Installing py3-rsa (3.4.2-r1)
(23/23) Installing aws-cli@edge-comm (1.18.55-r0)
Executing busybox-1.26.2-r11.trigger
OK: 576 MiB in 81 packages
二进制文件是在 /usr/bin/aws 中创建的,但在寻找 awscli 模块时会崩溃:
~ $ aws
Traceback (most recent call last):
File "/usr/bin/aws", line 19, in <module>
import awscli.clidriver
ModuleNotFoundError: No module named 'awscli'
谢谢!
【问题讨论】:
-
你能分享你的基本图像吗?
-
感谢 Adiii,这是 Docker-for-AWS 映像,但正如您所提到的,我认为我的可能已经过时了。同时,我找到了一个不使用 aws-cli 的解决方案,因此我不再需要这样做。 (stackoverflow.com/questions/61902349/…)
-
Docker-for-AWS 镜像一定有问题。它可以在 docker 容器中运行:
docker run --rm -it alpine:3.13 sh -xc 'apk add aws-cli && aws --version'.