导入基础镜像。
FROM ubuntu:16.04
安装必须的环境和包。
RUN sudo apt-get install -y g++
RUN sudo apt-get install -y libtiff-dev
RUN sudo apt-get install -y libjasper-dev
RUN sudo apt-get install -y make
将代码添加到docker中。
ADD . /home/faceCheck/
将工作目录转向代码所在目录。
WORKDIR /home/faceCheck/
以下程序涉及的动态链接库是最重要的,需要找到相应的存放位置,然后将动态库从git或者source中复制到docker相应的位置上。
RUN sudo cp run_need/liblapack.so.3 /usr/lib/
RUN sudo cp run_need/libcblas.so.3 /usr/lib/
RUN sudo cp run_need/libatlas.so.3 /usr/lib/
RUN sudo cp run_need/libblas.so.3 /usr/lib/
RUN sudo cp run_need/libdlib.so /usr/lib/
RUN sudo cp run_need/libdlib.so.19.8.0 /usr/lib/
RUN sudo cp run_need/libfaceQuality.so /usr/lib/
RUN sudo cp run_need/libopenblas.so.0 /usr/lib/
RUN sudo cp run_need/libopencv_core.so.3.2 /usr/lib/
RUN sudo cp run_need/libopencv_highgui.so.3.2 /usr/lib/
RUN sudo cp run_need/libopencv_imgcodecs.so.3.2 /usr/lib/
RUN sudo cp run_need/libopencv_imgproc.so.3.2 /usr/lib/
RUN sudo cp run_need/libtbb.so.2 /usr/lib/x86_64-linux-gnu/
RUN sudo cp run_need/libgfortran.so.3 /usr/lib/x86_64-linux-gnu/
RUN sudo cp run_need/libpng.so /usr/lib/x86_64-linux-gnu/
编译。
RUN make
添加动态库目录。
RUN export LD_LIBRARY_PATH="library/"
开放端口。
EXPOSE 8080
输出系统的PATH值查看
RUN echo $PATH
运行程序
RUN ./main 8080