X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=Dockerfile;h=7da30b64b560470cdca78bf7d0710cc900f8566f;hb=e1d5c652ff611a80b0446b555c02391e41ace0f9;hp=fbc58bb76a1e4d4360fbba9f443a169967f6f632;hpb=0f5c234d5da8897f2f831e02ff03912e582ba6e9;p=ric-app%2Fhw.git diff --git a/Dockerfile b/Dockerfile index fbc58bb..7da30b6 100755 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,7 @@ #/* #================================================================================== -# Copyright (c) 2018-2019 AT&T Intellectual Property. +# +# Copyright (c) 2019-2020 AT&T Intellectual Property. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -14,12 +15,13 @@ # See the License for the specific language governing permissions and # limitations under the License. #================================================================================== -#*/ +# */ + ARG SCHEMA_PATH=schemas ARG STAGE_DIR=/tmp/helloworld-xapp #================================================================================== -FROM nexus3.o-ran-sc.org:10004/bldr-ubuntu16-c-go@sha256:f4ebcc792b501f283c7848018b6f106bbcecf1f9e699035950614460b3c330f8 as ricbuild +FROM nexus3.o-ran-sc.org:10001/ubuntu:18.04 as ricbuild # to override repo base, pass in repo argument when running docker build: # docker build --build-arg REPOBASE=http://abc.def.org . .... @@ -32,8 +34,6 @@ ARG STAGE_DIR WORKDIR ${STAGE_DIR} RUN apt-get update \ && apt-get install -y \ - libcurl4-openssl-dev \ - libcurl3 \ cmake \ git \ build-essential \ @@ -50,33 +50,36 @@ RUN apt-get update \ # Install mdclog using debian package hosted at packagecloud.io ARG MDC_VER=0.0.4-1 -RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/staging/packages/debian/stretch/mdclog_${MDC_VER}_amd64.deb/download.deb -RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/staging/packages/debian/stretch/mdclog-dev_${MDC_VER}_amd64.deb/download.deb +RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/mdclog_${MDC_VER}_amd64.deb/download.deb +RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/mdclog-dev_${MDC_VER}_amd64.deb/download.deb RUN dpkg -i mdclog_${MDC_VER}_amd64.deb RUN dpkg -i mdclog-dev_${MDC_VER}_amd64.deb # Install RMr using debian package hosted at packagecloud.io -ARG RMR_VER=3.6.5 -RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/staging/packages/debian/stretch/rmr_${RMR_VER}_amd64.deb/download.deb -RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/staging/packages/debian/stretch/rmr-dev_${RMR_VER}_amd64.deb/download.deb +ARG RMR_VER=4.0.2 +RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/rmr_${RMR_VER}_amd64.deb/download.deb +RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/rmr-dev_${RMR_VER}_amd64.deb/download.deb RUN dpkg -i rmr_${RMR_VER}_amd64.deb RUN dpkg -i rmr-dev_${RMR_VER}_amd64.deb +#Install RNIB libraries +ARG RNIB_VER=1.0.0 +RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/rnib_${RNIB_VER}_all.deb/download.deb +RUN dpkg -i rnib_${RNIB_VER}_all.deb + ## Install SDL Libraries WORKDIR ${STAGE_DIR} RUN apt-get install -y cpputest RUN apt-get remove -y libboost-all-dev RUN apt-get install -y libboost-all-dev RUN apt-get install -y libhiredis-dev -RUN apt-get install -y valgrind +#RUN apt-get install -y valgrind -RUN git config --global http.proxy http://one.proxy.att.com:8080 RUN git clone https://gerrit.o-ran-sc.org/r/ric-plt/dbaas RUN cd dbaas/redismodule && \ ./autogen.sh && \ ./configure && \ make all && \ -# make test && \ make install WORKDIR ${STAGE_DIR} @@ -85,14 +88,11 @@ RUN cd sdl && \ ./autogen.sh && \ ./configure && \ make all && \ -# make test && \ make install -RUN git config --global --unset http.proxy WORKDIR ${STAGE_DIR} ## Install rapidjson - #git checkout tags/v1.1.0 && \ RUN git clone https://github.com/Tencent/rapidjson && \ cd rapidjson && \ @@ -103,36 +103,32 @@ RUN git clone https://github.com/Tencent/rapidjson && \ cd ${STAGE_DIR} && \ rm -rf rapidjson -### Copy RNIB library and include rnib. -RUN mkdir /usr/local/include/rnib - ##----------------------------------- # Now install the program #------------------------------------ COPY ./ ${STAGE_DIR} RUN ls -al -COPY ${STAGE}/rnib/*.h /usr/local/include/rnib/ -COPY ${STAGE}/rnibreader_old.a /usr/local/lib/ + RUN export CPATH=$CPATH:/usr/local/include && \ cd src && \ +# source ./xapp_env.sh \ make clean && \ make install COPY ${SCHEMA_PATH}/* /etc/xapp/ COPY init/init_script.py /etc/xapp/init_script.py - +COPY init/routes.txt /etc/xapp/routes.txt #--------------------------------------------- # #Build the final version -FROM ubuntu:16.04 +FROM ubuntu:18.04 ARG SCHEMA_PATH ARG STAGE_DIR ## copy just the needed libraries install it into the final image COPY --from=ricbuild ${STAGE_DIR}/*.deb /tmp/ -#COPY --from=ricbuild /usr/local/libexec/. /usr/local/libexec/. COPY --from=ricbuild /usr/local/lib/librmr_si* /usr/local/lib/ COPY --from=ricbuild /usr/local/lib/libsdl* /usr/local/lib/ COPY --from=ricbuild /usr/local/libexec/redismodule/libredis* /usr/local/libexec/redismodule/ @@ -143,14 +139,8 @@ RUN apt-get update && \ apt-get clean COPY --from=ricbuild /etc/xapp/* /etc/xapp/ COPY --from=ricbuild /usr/local/bin/hw_xapp_main /usr/local/bin/hw_xapp_main -COPY --from=ricbuild ${STAGE_DIR}/rnib/*.h /usr/local/include/rnib/ -COPY --from=ricbuild ${STAGE_DIR}/rnibreader_old.a /usr/local/lib/ - -##COPY --from=ricbuild /usr/local/bin/e2e-test-client /usr/local/bin/e2e-test-client -##COPY --from=ricbuild /usr/local/bin/mock-e2term-server /usr/local/bin/mock-e2term-server -##COPY --from=ricbuild /usr/local/bin/e2e-perf-client /usr/local/bin/e2e-perf-client -##COPY --from=ricbuild /usr/local/bin/e2e-perf-server /usr/local/bin/e2e-perf-server -##COPY --from=ricbuild /usr/local/bin/mock-a1-server /usr/local/bin/mock-a1-server +COPY --from=ricbuild /usr/local/include/rnib/*.h /usr/local/include/rnib/ +COPY --from=ricbuild /usr/local/include/rnib/rnibreader.a /usr/local/include/rnib/ RUN ldconfig @@ -159,13 +149,9 @@ RUN sysctl -w net.ipv6.conf.lo.disable_ipv6=1 ##ENV PYTHONHOME=/opt/python3 \ ## PYTHONPATH=/opt/python3 \ ENV RMR_RTG_SVC="9999" \ + RMR_SEED_RT="/etc/xapp/routes.txt" \ LD_LIBRARY_PATH="/usr/local/lib:/usr/local/libexec" \ - NAME=ADM_CTRL_XAPP \ - PORT=tcp:4560 \ - THREADS=1\ VERBOSE=0 \ - MESSAGE_TYPE=10002 \ - RATE=1 \ CONFIG_FILE=/opt/ric/config/config-file.json