docker-archive / for-aws

92 stars 26 forks source link

can't install aws-cli on shell-aws #186

Open Meidan opened 5 years ago

Meidan commented 5 years ago

Expected behavior

aws cli is available to use when running in the shell container

Actual behavior

aws cli is not insatlled

Information


### Steps to reproduce the behavior

  1. in one of the ec2 instances run as `docker` user: `docker exec -it $(docker ps -aqf "name=shell-aws") sudo apk add aws-cli --update-cache --repository http://dl-3.alpinelinux.org/alpine/edge/testing/ --allow-untrusted`
  2. this used to work for a while, still works on a vanilla alpine container, now getting error:

ERROR: unsatisfiable constraints: py3-urllib3 (missing): required by: py3-botocore-1.12.75-r0[py3-urllib3]

Meidan commented 5 years ago

also doesn't work when running the docker4x/shell-aws:18.06.1-ce-aws1 container locally

Meidan commented 5 years ago

simplest solution would be to upgrade the alpine base image of shell-aws (currently 3.5), to >=3.7 which works:

/ # meidan@lenovo:~$ docker run -it --rm alpine:3.7
Unable to find image 'alpine:3.7' locally
3.7: Pulling from library/alpine
407ea412d82c: Pull complete 
Digest: sha256:0c842418b34ffd6a134dad2e19d6b1f63b98881c2ec67ffd1e6be6b69e97998a
Status: Downloaded newer image for alpine:3.7
/ # apk add aws-cli --update-cache --repository http://dl-3.alpinelinux.org/alpine/edge/testing/ --allow-untrusted
fetch http://dl-3.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/community/x86_64/APKINDEX.tar.gz
(1/37) Installing libbz2 (1.0.6-r6)
(2/37) Installing expat (2.2.5-r0)
(3/37) Installing libffi (3.2.1-r4)
(4/37) Installing gdbm (1.13-r1)
(5/37) Installing xz-libs (5.2.3-r1)
(6/37) Installing ncurses-terminfo-base (6.0_p20171125-r1)
(7/37) Installing ncurses-terminfo (6.0_p20171125-r1)
(8/37) Installing ncurses-libs (6.0_p20171125-r1)
(9/37) Installing readline (7.0.003-r0)
(10/37) Installing sqlite-libs (3.21.0-r1)
(11/37) Installing python3 (3.6.5-r0)
(12/37) Installing libgcc (6.4.0-r5)
(13/37) Installing libstdc++ (6.4.0-r5)
(14/37) Installing groff (1.22.3-r2)
(15/37) Installing py3-six (1.11.0-r0)
(16/37) Installing py3-dateutil (2.6.1-r0)
(17/37) Installing py3-jmespath (0.9.3-r0)
(18/37) Installing py3-urllib3 (1.22-r0)
(19/37) Installing py3-botocore (1.12.75-r0)
(20/37) Installing py3-s3transfer (0.1.13-r0)
(21/37) Installing py3-olefile (0.43-r2)
(22/37) Installing libpng (1.6.34-r1)
(23/37) Installing freetype (2.8.1-r3)
(24/37) Installing libjpeg-turbo (1.5.3-r2)
(25/37) Installing lcms2 (2.8-r1)
(26/37) Installing openjpeg (2.3.0-r0)
(27/37) Installing tiff (4.0.10-r0)
(28/37) Installing libwebp (0.6.0-r1)
(29/37) Installing py3-pillow (4.3.0-r0)
(30/37) Installing py3-roman (2.0.0-r2)
(31/37) Installing py3-docutils (0.13.1-r0)
(32/37) Installing py3-colorama (0.3.9-r0)
(33/37) Installing yaml (0.1.7-r0)
(34/37) Installing py3-yaml (3.12-r1)
(35/37) Installing py3-asn1 (0.4.2-r0)
(36/37) Installing py3-rsa (3.4.2-r2)
(37/37) Installing aws-cli (1.16.85-r0)
Executing busybox-1.27.2-r11.trigger
OK: 131 MiB in 50 packages

currently installing through Python directly as a workaround: python -m pip install awscli

jerroydmoore commented 5 years ago

alpine:3.6 with apk add aws-cli --update-cache --repository http://dl-3.alpinelinux.org/alpine/edge/testing/ worked fine for our CI system 9 days ago. Now it's borked in CI and my localhost. Upgrading to >=3.7 fixed the problem.