1010# |
1111# |
1212# V
13- # builder --------------------------
14- # / \ |
15- # / \ |
16- # V | V
17- # gstreamer-builder opencv-builder realsense-builder
18- # | | |
19- # | | |
20- # (copy libs) \ | (copy libs) |
21- # \ | |
22- # V V (copy libs) |
23- # dlstreamer-dev <-------------------|
13+ # builder -----------------------------------------------
14+ # / \ | |
15+ # / \ | |
16+ # V V | |
17+ # gstreamer-builder opencv-builder V V
18+ # | | kafka-builder realsense-builder
19+ # | | | |
20+ # (copy libs) \ / (copy libs) | |
21+ # \ / | |
22+ # V V (copy libs) | |
23+ # dlstreamer-dev <-------------------|--------------------|
2424# |
2525# |
2626# V
9696 libcairo2-dev=\* libxt-dev=\* libgirepository1.0-dev=\* libgles2-mesa-dev=\* wayland-protocols=\* \
9797 libssh2-1-dev=\* cmake=\* git=\* valgrind=\* numactl=\* libvpx-dev=\* libopus-dev=\* libsrtp2-dev=\* libxv-dev=\* \
9898 linux-libc-dev=\* libpmix2t64=\* libhwloc15=\* libhwloc-plugins=\* libxcb1-dev=\* libx11-xcb-dev=\* \
99- ffmpeg=\* librdkafka-dev= \* libpaho-mqtt-dev=\* libpostproc-dev=\* libavfilter-dev=\* libavdevice-dev=\* \
99+ ffmpeg=\* libpaho-mqtt-dev=\* libpostproc-dev=\* libavfilter-dev=\* libavdevice-dev=\* \
100100 libswscale-dev=\* libswresample-dev=\* libavutil-dev=\* libavformat-dev=\* libavcodec-dev=\* libxml2-dev=\* libsoup-3.0-0=\* && \
101101 apt-get clean && \
102102 rm -rf /var/lib/apt/lists/*
@@ -305,6 +305,20 @@ RUN \
305305 rm -rf ./* && \
306306 strip -g "${GSTREAMER_DIR}" /lib/gstreamer-1.0/libgstrs*.so
307307
308+ # ==============================================================================
309+ FROM builder AS kafka-builder
310+
311+ SHELL ["/bin/bash" , "-xo" , "pipefail" , "-c" ]
312+
313+ # Build librdkafka
314+ RUN curl -sSL https://github.com/edenhill/librdkafka/archive/v2.12.1.tar.gz | tar -xz
315+ WORKDIR /librdkafka-2.12.1
316+ RUN ./configure &&\
317+ make && make install
318+
319+ WORKDIR /copy_libs
320+ RUN cp -a /usr/local/lib/librdkafka* ./
321+
308322# ==============================================================================
309323
310324FROM builder AS realsense-builder
@@ -342,10 +356,12 @@ FROM builder AS dlstreamer-dev
342356
343357SHELL ["/bin/bash" , "-xo" , "pipefail" , "-c" ]
344358
359+ COPY --from=gstreamer-builder ${GSTREAMER_DIR} ${GSTREAMER_DIR}
345360COPY --from=opencv-builder /usr/local/include/opencv4 /usr/local/include/opencv4
346361COPY --from=opencv-builder /copy_libs/ /usr/local/lib/
347362COPY --from=opencv-builder /usr/local/lib/cmake/opencv4 /usr/local/lib/cmake/opencv4
348- COPY --from=gstreamer-builder ${GSTREAMER_DIR} ${GSTREAMER_DIR}
363+ COPY --from=kafka-builder /usr/local/include/librdkafka /usr/local/include/librdkafka
364+ COPY --from=kafka-builder /copy_libs/ /usr/local/lib/
349365COPY --from=realsense-builder /copy_libs/ /usr/local/lib/
350366COPY --from=realsense-builder /usr/local/include/librealsense2 /usr/local/include/librealsense2
351367
@@ -389,8 +405,8 @@ ENV LD_LIBRARY_PATH=${GSTREAMER_DIR}/lib:${LIBDIR}:/usr/lib:/usr/local/lib:${LD_
389405ENV LIB_PATH=$LIBDIR
390406ENV GST_PLUGIN_PATH=${LIBDIR}:${GSTREAMER_DIR}/lib/gstreamer-1.0:/usr/lib/x86_64-linux-gnu/gstreamer-1.0:${GST_PLUGIN_PATH}
391407ENV LC_NUMERIC=C
392- ENV C_INCLUDE_PATH=${DLSTREAMER_DIR}/include:${DLSTREAMER_DIR}/include/dlstreamer/gst/metadata:${C_INCLUDE_PATH}
393- ENV CPLUS_INCLUDE_PATH=${DLSTREAMER_DIR}/include:${DLSTREAMER_DIR}/include/dlstreamer/gst/metadata:${CPLUS_INCLUDE_PATH}
408+ ENV C_INCLUDE_PATH=/usr/local/include: ${DLSTREAMER_DIR}/include:${DLSTREAMER_DIR}/include/dlstreamer/gst/metadata:${C_INCLUDE_PATH}
409+ ENV CPLUS_INCLUDE_PATH=/usr/local/include: ${DLSTREAMER_DIR}/include:${DLSTREAMER_DIR}/include/dlstreamer/gst/metadata:${CPLUS_INCLUDE_PATH}
394410ENV GST_PLUGIN_SCANNER=${GSTREAMER_DIR}/bin/gstreamer-1.0/gst-plugin-scanner
395411ENV GI_TYPELIB_PATH=${GSTREAMER_DIR}/lib/girepository-1.0
396412ENV PYTHONPATH=${GSTREAMER_DIR}/lib/python3/dist-packages:${DLSTREAMER_DIR}/python:${PYTHONPATH}
@@ -435,6 +451,7 @@ RUN \
435451 mkdir -p /deb-pkg/usr/lib/ && \
436452 mkdir -p /deb-pkg/opt/intel/ && \
437453 mkdir -p /deb-pkg/opt/opencv/include && \
454+ mkdir -p /deb-pkg/opt/rdkafka && \
438455 mkdir -p /deb-pkg/opt/librealsense/ && \
439456 find /opt/intel/openvino_genai -regex '.*\/ lib.*\( genai\| token\) .*$' -exec cp -a {} /deb-pkg/usr/lib/ \; && \
440457 cp -r "${DLSTREAMER_DIR}/build/intel64/${BUILD_ARG}" /deb-pkg/opt/intel/dlstreamer && \
@@ -446,6 +463,7 @@ RUN \
446463 cp -rT "${GSTREAMER_DIR}" /deb-pkg/opt/intel/dlstreamer/gstreamer && \
447464 cp -a /usr/local/lib/libopencv*.so* /deb-pkg/opt/opencv/ && \
448465 cp -r /usr/local/include/opencv4/* /deb-pkg/opt/opencv/include && \
466+ cp -a /usr/local/lib/librdkafka*.so* /deb-pkg/opt/rdkafka/ && \
449467 cp -a /usr/local/lib/librealsense* /deb-pkg/opt/librealsense/ && \
450468 rm -rf /deb-pkg/opt/intel/dlstreamer/archived && \
451469 rm -rf /deb-pkg/opt/intel/dlstreamer/docker && \
@@ -537,7 +555,7 @@ RUN \
537555# DL Streamer environment variables
538556ENV LIBVA_DRIVER_NAME=iHD
539557ENV GST_PLUGIN_PATH=/opt/intel/dlstreamer/lib:/opt/intel/dlstreamer/gstreamer/lib/gstreamer-1.0:/opt/intel/dlstreamer/gstreamer/lib/
540- ENV LD_LIBRARY_PATH=/opt/intel/dlstreamer/gstreamer/lib:/opt/intel/dlstreamer/lib:/opt/intel/dlstreamer/lib/gstreamer-1.0:/opt/opencv:/opt/librealsense:/usr/lib :/usr/local/lib/gstreamer-1.0:/usr/local/lib
558+ ENV LD_LIBRARY_PATH=/opt/intel/dlstreamer/gstreamer/lib:/opt/intel/dlstreamer/lib:/opt/intel/dlstreamer/lib/gstreamer-1.0:/opt/opencv:/opt/rdkafka:/opt/librealsense :/usr/local/lib/gstreamer-1.0:/usr/local/lib
541559ENV LIBVA_DRIVERS_PATH=/usr/lib/x86_64-linux-gnu/dri
542560ENV GST_VA_ALL_DRIVERS=1
543561ENV MODEL_PROC_PATH=/opt/intel/dlstreamer/samples/gstreamer/model_proc
0 commit comments