未验证 提交 63d075c1 编写于 作者: 羽飞's avatar 羽飞 提交者: GitHub

Merge pull request #34 from hnwyllmm/feature/docker

add dockerfile
FROM centos:7
ARG HOME_DIR=/root
ARG GIT_SOURCE=github
ENV LANG=en_US.UTF-8
# install rpm
RUN yum install -y make git wget centos-release-scl scl-utils which
# clone deps
RUN mkdir -p ${HOME_DIR}/deps
WORKDIR ${HOME_DIR}/deps
RUN wget http://yum-test.obvos.alibaba-inc.com/oceanbase/development-kit/el/7/x86_64/obdevtools-cmake-3.20.2-3.el7.x86_64.rpm \
&& rpm -ivh obdevtools-cmake-3.20.2-3.el7.x86_64.rpm
RUN git clone https://github.com/libevent/libevent -b release-2.1.12-stable
RUN git clone https://github.com/open-source-parsers/jsoncpp.git
RUN git clone https://github.com/google/googletest
# prepare env
RUN yum install -y devtoolset-11-gcc devtoolset-11-gcc-c++
WORKDIR ${HOME_DIR}
RUN echo "export PATH=/opt/rh/devtoolset-11/root/bin:/usr/local/oceanbase/devtools/bin:$PATH" >> .bashrc
RUN echo "export LD_LIBRARY_PATH=/usr/local/lib64:$LD_LIBRARY_PATH" >> .bashrc
ENV PATH /opt/rh/devtoolset-11/root/bin:/usr/local/oceanbase/devtools/bin:$PATH
ENV LD_LIBRARY_PATH /usr/local/lib64:$LD_LIBRARY_PATH
# compile deps
RUN mkdir -p ${HOME_DIR}/deps/libevent/build \
&& mkdir -p ${HOME_DIR}/deps/googletest/build \
&& mkdir -p ${HOME_DIR}/deps/jsoncpp
WORKDIR ${HOME_DIR}/deps/libevent/build
RUN cmake .. -DEVENT__DISABLE_OPENSSL=ON && make -j && make install
WORKDIR ${HOME_DIR}/deps/googletest/build
RUN cmake .. && make -j && make install
WORKDIR ${HOME_DIR}/deps/jsoncpp/build
RUN cmake -DJSONCPP_WITH_TESTS=OFF -DJSONCPP_WITH_POST_BUILD_UNITTEST=OFF .. && make -j && make install
# clone miniob code
RUN mkdir -p ${HOME_DIR}/source
WORKDIR ${HOME_DIR}/source
RUN git clone https://${GIT_SOURCE}.com/oceanbase/miniob
RUN mkdir -p ${HOME_DIR}/source/miniob/build
WORKDIR ${HOME_DIR}/source/miniob/build
RUN cmake .. -DDEBUG=ON -DCMAKE_C_COMPILER=`which gcc` -DCMAKE_CXX_COMPILER=`which g++` \
&& make -j4
WORKDIR ${HOME_DIR}
ENTRYPOINT exec /sbin/init
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册