MRE/docker/mre.Dockerfile
2025-04-09 16:16:20 -06:00

35 lines
1.0 KiB
Docker

FROM python:3.13.2-bullseye
LABEL MAINTAINER="Chris Diesch <chris@quarterhomes.com>"
WORKDIR /var/www
# Add the entrypoint and make it executable
ADD ./docker/entrypoint.sh /var/docker-entrypoint.sh
RUN chmod +x /var/docker-entrypoint.sh
# add the requirements and install them
ADD ./requirements.txt /var/www/requirements.txt
RUN pip install -r /var/www/requirements.txt
ADD ./app/mre_module/requirements.txt /var/www/mre_reuirements.txt
RUN pip install -r /var/www/mre_reuirements.txt
# the multipolyfit package has a small bug, but it is easily fixed
RUN rm /usr/local/lib/python3.13/site-packages/multipolyfit/__init__.py
RUN echo "from .core import multipolyfit, mk_model, mk_sympy_function" >> /usr/local/lib/python3.13/site-packages/multipolyfit/__init__.py
# add the uwsgi runner
ADD ./run.py /var/www/run.py
# set environment variables
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
# Copy the app directory
COPY ./app /var/www/app
EXPOSE 80/tcp
EXPOSE 80/udp
# define the entrypoint
CMD ["/var/docker-entrypoint.sh"]