35 lines
1.0 KiB
Docker
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"]
|