# Dockerfile

ARG         AWS_ACCOUNT=086679231553

FROM        ${AWS_ACCOUNT}.dkr.ecr.us-east-1.amazonaws.com/docker-parent-images:python311

USER       root

# Update and install common packages
RUN        DEBIAN_FRONTEND=noninteractive apt-get -y update \
           && apt-get -y install curl tar zip supervisor \
           && apt-get -y clean \
           && rm -rf /var/lib/apt/lists/*

WORKDIR    /var/app

# Create and configure virtualenv and worker
RUN        python3.11 -m venv /var/app
RUN        mkdir /var/log/worker
RUN        chown -R worker:worker /var/log/worker /var/app

USER       worker

# Add application and install requirements
ADD        . /var/app
RUN        /var/app/bin/pip install -U pip
RUN        if [ -f /var/app/requirements.txt ]; then /var/app/bin/pip install -I -r /var/app/requirements.txt; fi

EXPOSE     5555
CMD        ["/usr/bin/supervisord", "-c", "/var/app/worker/conf/supervisord.conf"]
