overexchange
overexchange

Reputation: 1

pip install of aws-sam-cli package with python3.7 version

In the below docker file:

FROM alpine:latest

ENV HOME /home/samcli
ENV PATH $HOME/.local/bin:$PATH

RUN mkdir /root/bin /aws; \
    apk add --no-cache groff less bash python jq curl py-pip tzdata

RUN ln -fs /usr/share/zoneinfo/Etc/UTC /etc/localtime

RUN apk add --no-cache --virtual .build-deps gcc python2-dev python3-dev linux-headers musl-dev && \
    pip install --upgrade pip; \
    adduser samcli -Du 5566; \
    chown -R samcli $HOME;

USER samcli

WORKDIR $HOME

RUN pip install --user --upgrade awscli aws-sam-cli;

USER root

RUN apk del .build-deps; \
    rm -rf /var/cache/apk/*

Layer(RUN pip install --user --upgrade awscli aws-sam-cli;) is installing with python 2.7, despite image has python3.7 installed.

I see below deprecation error when installing python package:

Step 9/11 : RUN pip install --user --upgrade awscli aws-sam-cli;

DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/


How to install aws package with python3.7? because below command is using python2

pip install --user --upgrade awscli aws-sam-cli;

Upvotes: 1

Views: 6382

Answers (2)

JesusYaro
JesusYaro

Reputation: 24

This Dockerfile works for me.

FROM alpine:latest

RUN apk update && apk upgrade

RUN apk --no-cache add python3 py3-pip gcc musl-dev python3-dev

RUN pip install aws-sam-cli awscli

...

Upvotes: 0

Adiii
Adiii

Reputation: 59896

I would recommend using python offical image based on alpine so you will do not need to maintain and install the python version. Below base image is base on alpine 3.9 and python version is 3.7

FROM python:3.7-alpine3.9

ENV HOME /home/samcli
ENV PATH $HOME/.local/bin:$PATH
RUN ln -fs /usr/share/zoneinfo/Etc/UTC /etc/localtime
RUN apk add --no-cache --virtual .build-deps python2-dev  python3-dev gcc linux-headers musl-dev && \
    adduser samcli -Du 5566; \
    chown -R samcli $HOME;
RUN apk add --no-cache groff less bash jq curl py-pip tzdata
USER samcli

WORKDIR $HOME

RUN pip install --user --upgrade awscli aws-sam-cli;
USER root

RUN apk del .build-deps; \
    rm -rf /var/cache/apk/*

Upvotes: 2

Related Questions