FROM amazonlinux:2

ARG REVISION
ARG BUILDTIME
ARG PYTHON_VERSION
LABEL REVISION=${REVISION}
LABEL BUILDTIME=${BUILDTIME}
LABEL PYTHON_VERSION=${PYTHON_VERSION}

RUN yum upgrade -y \
  && yum install -y make wget tar gzip shadow-utils \
  && yum erase openssl-devel -y \
  && yum install -y gcc zlib-devel bzip2-devel readline-devel sqlite-devel tk-devel libffi-devel xz-devel \
  && yum install -y openssl11 openssl11-devel postgresql-devel

RUN cd /tmp \
  && wget https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VERSION}.tgz \
  && ls -l \
  && tar -xvf ./Python-$PYTHON_VERSION.tgz \
  && cd ./Python-$PYTHON_VERSION \
  && ./configure --enable-optimizations --enable-loadable-sqlite-extensions \
  && make -j $(nproc) \
  && make altinstall \
  && alternatives --install /usr/bin/python3 python3 /usr/local/bin/python3.10 1 \
  && python3 -m ensurepip --upgrade

RUN yum clean all \
  && rm -rf /usr/share/{locale,man,doc,info,cracklib}

RUN groupadd -g 1000 sme \
  && useradd -g sme -u 1000 -d /app sme

ENV APP_USER=sme APP_GROUP=sme
ENV ROOT_USER=root ROOT_GROUP=root

USER ${APP_USER}
WORKDIR /app
