-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile
68 lines (60 loc) · 1.95 KB
/
Dockerfile
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
66
67
68
FROM centos:7 as builder
MAINTAINER [Nestal Wan <me@nestal.net>]
ENV container docker
USER 0
# install development tools
RUN yum install -y deltarpm epel-release centos-release-scl \
&& rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 \
&& yum update -y \
&& yum install -y --setopt=tsflags=nodocs openssl-devel git make hiredis-devel \
file-devel libicu-devel zlib-devel bzip2-devel xz-devel libunwind-devel which \
libexif-devel msgpack-devel libpng-devel libcurl-devel \
cmake3 libb2-devel gperftools-devel devtoolset-8 \
&& yum clean all -y
# add required packages after installing packages
# https://dl.bintray.com/boostorg/release/1.67.0/source/boost_1_67_0.tar.gz \
# https://github.com/opencv/opencv/archive/3.4.1.tar.gz \
ADD \
boost_1_72_0.tar.gz 4.2.0.tar.gz \
/build/
WORKDIR /build
ENV PATH="/opt/rh/devtoolset-8/root/usr/bin:/opt/bin:${PATH}" \
LD_LIBARY_PATH="/opt/rh/devtoolset-8/root/usr/lib64"
# build boost (>1.65 to support boost beast)
RUN \
cd boost_1_72_0 \
&& ./bootstrap.sh \
--with-libraries=program_options,filesystem,system \
--prefix=/opt/boost_1_72 \
&& (./b2 -j8 install; exit 0) \
&& rm -rf /build/boost_1_72_0
# OpenCV
RUN \
cd opencv-4.2.0 \
&& mkdir build \
&& cd build \
&& cmake3 \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/opt \
-DBUILD_SHARED_LIBS=OFF \
-DBUILD_LIST=core,imgproc,imgcodecs,objdetect,highgui \
-DBUILD_opencv_legacy=OFF \
-DBUILD_JASPER=OFF \
-DBUILD_WEBP=OFF \
-DBUILD_TBB=OFF \
-DBUILD_IPP_IW=OFF \
-DBUILD_ITT=OFF \
-DBUILD_OPENEXR=OFF \
-DWITH_FFMPEG=OFF \
-DWITH_GSTREAMER=OFF \
-DWITH_GTK=OFF \
-DWITH_IPP=OFF \
-DWITH_JASPER=OFF \
-DWITH_WEBP=OFF \
-DWITH_OPENEXR=OFF \
.. \
&& make -j8 install \
&& cd .. && rm -rf build
# AWS libraries: for future requirements to support S3 backup
#RUN git clone --depth 1 -b 1.4.60 https://github.com/aws/aws-sdk-cpp.git
#RUN cd aws-sdk-cpp && mkdir build && cd build && cmake -DBUILD_SHARED_LIBS=OFF .. && make -j8