Spaces:
Building
Building
File size: 2,037 Bytes
2acc806 4e6448d 706df25 4e6448d cb8fce9 2acc806 0194c93 3be0778 cb8fce9 2acc806 7a33ead 6450803 7a33ead 2acc806 25eb4da 2acc806 0194c93 32ac535 c580257 32ac535 25eb4da 3ff7d27 b4bc4c7 0194c93 b4bc4c7 c580257 b4bc4c7 cb8fce9 3be0778 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
# syntax = docker/dockerfile:1.2
FROM continuumio/miniconda3:24.1.2-0
# install os dependencies including xauth
RUN mkdir -p /usr/share/man/man1
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y \
ca-certificates \
curl \
vim \
sudo \
default-jre \
git \
gcc \
build-essential \
wget \
xvfb \
xauth \
&& rm -rf /var/lib/apt/lists/*
RUN conda install python=3.8.13 -y
RUN pip install openmim
RUN pip install torch==2.0.0
RUN mim install mmcv-full==1.7.0
RUN pip install mmdet==2.27.0
RUN pip install torchserve
RUN pip install mmpose==0.29.0
RUN pip install torchvision==0.15.1
RUN pip install numpy==1.24.4 scikit-image scipy opencv-python requests pyyaml flask glfw PyOpenGL Pillow shapely tqdm gradio
# bugfix for xtcocoapi, an mmpose dependency
RUN git clone https://github.com/jin-s13/xtcocoapi.git
WORKDIR xtcocoapi
RUN pip install -r requirements.txt
RUN python setup.py install
WORKDIR /
# prep torchserve
RUN mkdir -p /home/torchserve/model-store
RUN wget https://github.com/facebookresearch/AnimatedDrawings/releases/download/v0.0.1/drawn_humanoid_detector.mar -P /home/torchserve/model-store/
RUN wget https://github.com/facebookresearch/AnimatedDrawings/releases/download/v0.0.1/drawn_humanoid_pose_estimator.mar -P /home/torchserve/model-store/
COPY config.properties /home/torchserve/config.properties
# Create a non-root user with UID 1000
RUN adduser --disabled-password --gecos '' --uid 1000 appuser
WORKDIR /app
COPY setup.py /app/setup.py
COPY animated_drawings /app/animated_drawings
COPY app.py /app/app.py
COPY examples /app/examples
RUN pip install -e .
# Pre-create directories and set permissions
RUN mkdir -p uploads_gradio outputs_gradio flagged && \
chown -R appuser:appuser /app
USER appuser
EXPOSE 7860
# Start TorchServe in background, wait a bit, then run app in xvfb-run
CMD sh -c "torchserve --start --ts-config /home/torchserve/config.properties && sleep 10 && xvfb-run -a python app.py" |