|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- FROM pytorch/pytorch:1.8.1-cuda10.2-cudnn7-devel
- WORKDIR /home
-
- RUN apt update -o Acquire::https::developer.download.nvidia.com::Verify-Peer=false
-
- # Required by OpenCV
- RUN apt install libgl1 libglx-mesa0 libgl1-mesa-glx -y
- RUN apt install -y gfortran libopenblas-dev liblapack-dev
-
- # Update Python
- RUN apt install python3.8 python3.8-distutils python3-venv curl -y
- RUN python3.8 --version
- RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
- RUN python3.8 get-pip.py
-
- ######################################################
- # Install OpenCV manually with gstreamer support #
- ######################################################
-
- ENV DEBIAN_FRONTEND="noninteractive" TZ="Europe/London"
- RUN apt install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev \
- gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad \
- gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-doc gstreamer1.0-tools \
- gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 \
- gstreamer1.0-pulseaudio -y
-
- RUN apt install ubuntu-restricted-extras wget ca-certificates -y
-
- RUN wget -k --no-check-certificate https://github.com/opencv/opencv/archive/4.5.5.zip -O opencv.zip
- RUN apt install unzip cmake -y
-
- RUN wget -k --no-check-certificate https://github.com/opencv/opencv_contrib/archive/4.5.5.zip -O opencv_contrib.zip
-
- RUN unzip opencv.zip
- RUN unzip opencv_contrib.zip
-
- RUN ls -la
- RUN pwd
-
- WORKDIR opencv-4.5.5
- RUN mkdir build
-
- WORKDIR build
-
- RUN cmake -D CMAKE_BUILD_TYPE=RELEASE \
- -D INSTALL_PYTHON_EXAMPLES=OFF \
- -D INSTALL_C_EXAMPLES=OFF \
- -D PYTHON_EXECUTABLE=$(which python3) \
- -D BUILD_opencv_python2=OFF \
- -D OPENCV_EXTRA_MODULES_PATH=/home/opencv_contrib-4.5.5/modules \
- -D WITH_CUDA=ON \
- -D WITH_CUDNN=OFF\
- -D OPENCV_DNN_CUDA=ON\
- -D ENABLE_FAST_MATH=1\
- -D CUDA_FAST_MATH=1\
- -D CUDA_ARCH_BIN=6.0\
- -D WITH_CUBLAS=1 \
- -D CMAKE_INSTALL_PREFIX=$(python3 -c "import sys; print(sys.prefix)") \
- -D PYTHON3_EXECUTABLE=$(which python3) \
- -D PYTHON3_INCLUDE_DIR=$(python3 -c "from distutils.sysconfig import get_python_inc; print(get_python_inc())") \
- -D PYTHON3_PACKAGES_PATH=$(python3 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())") \
- -D WITH_GSTREAMER=ON \
- -D BUILD_TIFF=ON \
- -D BUILD_JPEG=ON \
- -D WITH_JPEG=ON \
- -D BUILD_EXAMPLES=OFF ..
-
- RUN make -j6
- RUN make install
- RUN ldconfig
-
- ## Install applications dependencies
- RUN pip install tqdm pillow pytorch-ignite asyncio --trusted-host=developer.download.nvidia.com
-
- ## Add Kafka Python library
- RUN pip install kafka-python --trusted-host=developer.download.nvidia.com
-
- ## Add tracking dependencies
- RUN pip install lap scipy Cython --trusted-host=developer.download.nvidia.com
- RUN pip install cython_bbox --trusted-host=developer.download.nvidia.com
-
- ## SEDNA SECTION ##
-
- COPY ./lib/requirements.txt /home
- RUN pip install -r /home/requirements.txt --trusted-host=developer.download.nvidia.com
-
- ENV PYTHONPATH "${PYTHONPATH}:/home/lib"
-
- # OpenCV
- RUN apt install libglib2.0-0 -y
-
- ## Install S3 library
- RUN pip install boto3
-
- # ONNX
- RUN pip install onnx protobuf==3.16.0
-
- WORKDIR /home/work
- COPY ./lib /home/lib
-
- COPY examples/multiedgeinference/pedestrian_tracking/detection/ /home/work/
-
- ENV LOG_LEVEL="INFO"
-
- ENTRYPOINT ["python"]
- CMD ["worker.py"]
|