# Dockerfile

ARG    AWS_ACCOUNT=437795906767
FROM   ${AWS_ACCOUNT}.dkr.ecr.us-east-1.amazonaws.com/docker-parent-images:python38 AS base

WORKDIR /var/app

# Update and install common packages
RUN yum -y -q update && \
    yum -y -q install \
        git \
        zip \
        gcc

# Create and configure virtualenv
RUN python3.8 -m venv /var/app/env
RUN /var/app/env/bin/python -m pip install -q -U pip setuptools wheel

# Add application files
COPY abacus_adjustment ./abacus_adjustment
COPY application.py requirements.txt ./
COPY uwsgi-start.sh /

# Install requirements
RUN if [ -f /var/app/requirements.txt ]; then /var/app/env/bin/python -m pip install -q -I -r /var/app/requirements.txt; fi

# Add startup script
RUN /var/app/env/bin/python -m pip install -q uwsgi
RUN useradd uwsgi -s /bin/false
RUN mkdir /var/log/uwsgi
RUN chown -R uwsgi:uwsgi /var/log/uwsgi

ENTRYPOINT ["/uwsgi-start.sh"]
EXPOSE     8080
