|
|
|
FROM python:3.12
|
|
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install -qq -y build-essential xvfb xdg-utils wget ffmpeg libpq-dev vim libmagick++-dev fonts-liberation sox bc --no-install-recommends \
|
|
&& apt-get clean
|
|
|
|
|
|
RUN mkdir -p /tmp/distr && \
|
|
cd /tmp/distr && \
|
|
wget https://download.imagemagick.org/ImageMagick/download/releases/ImageMagick-7.0.11-2.tar.xz && \
|
|
tar xvf ImageMagick-7.0.11-2.tar.xz && \
|
|
cd ImageMagick-7.0.11-2 && \
|
|
./configure --enable-shared=yes --disable-static --without-perl && \
|
|
make && \
|
|
make install && \
|
|
ldconfig /usr/local/lib && \
|
|
cd /tmp && \
|
|
rm -rf distr
|
|
|
|
|
|
RUN useradd -m -u 1000 user
|
|
|
|
|
|
USER user
|
|
|
|
|
|
ENV HOME=/home/user \
|
|
PATH=/home/user/.local/bin:$PATH
|
|
|
|
|
|
WORKDIR $HOME/app
|
|
|
|
|
|
RUN pip install --no-cache-dir --upgrade pip
|
|
|
|
|
|
COPY --chown=user requirements.txt $HOME/app/requirements.txt
|
|
|
|
|
|
RUN pip install -r requirements.txt
|
|
|
|
|
|
COPY --chown=user . $HOME/app
|
|
|
|
|
|
|
|
|
|
|
|
|
|
EXPOSE 7860
|
|
|
|
|
|
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860"]
|
|
|