1 ARG SCHEMA_PATH=schemas
2 ARG STAGE_DIR=/tmp/ac-xapp
4 #==================================================================================
5 FROM nexus3.o-ran-sc.org:10004/bldr-ubuntu16-c-go@sha256:c53b2f70bfc47de5af0eb0c4264f894b2a13ca3c954befda0725191826dda201 as ricbuild
7 # to override repo base, pass in repo argument when running docker build:
8 # docker build --build-arg REPOBASE=http://abc.def.org . ....
9 ARG REPOBASE=https://gerrit.oran-osc.org/r
14 # Install necessary packages
17 && apt-get install -y \
18 libcurl4-openssl-dev \
34 # Install mdclog using debian package hosted at packagecloud.io
36 RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/master/packages/debian/stretch/mdclog_${MDC_VER}_amd64.deb/download.deb
37 RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/master/packages/debian/stretch/mdclog-dev_${MDC_VER}_amd64.deb/download.deb
38 RUN dpkg -i mdclog_${MDC_VER}_amd64.deb
39 RUN dpkg -i mdclog-dev_${MDC_VER}_amd64.deb
41 # Install RMr using debian package hosted at packagecloud.io
43 RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/staging/packages/debian/stretch/rmr_${RMR_VER}_amd64.deb/download.deb
44 RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/staging/packages/debian/stretch/rmr-dev_${RMR_VER}_amd64.deb/download.deb
45 RUN dpkg -i rmr_${RMR_VER}_amd64.deb
46 RUN dpkg -i rmr-dev_${RMR_VER}_amd64.deb
50 #git checkout tags/v1.1.0 && \
51 RUN git clone https://github.com/Tencent/rapidjson && \
55 cmake -DCMAKE_INSTALL_PREFIX=/usr/local .. && \
61 ##-----------------------------------
62 # Now install the program
63 #------------------------------------
65 RUN export CPATH=$CPATH:/usr/local/include && \
70 COPY ${SCHEMA_PATH}/* /etc/xapp/
71 COPY init/init_script.py /etc/xapp/init_script.py
73 #---------------------------------------------
74 # Build the final version
75 #FROM nexus3.o-ran-sc.org:10004/bldr-ubuntu16-c-go:1-u16.04-nng1.1.1
82 # copy just the needed libraries install it into the final image
83 COPY --from=ricbuild ${STAGE_DIR}/*.deb /tmp/
84 COPY --from=ricbuild /usr/local/lib/libnng* /usr/local/lib/
85 RUN dpkg -i /tmp/*.deb
86 RUN apt-get update && \
87 apt-get install -y libcurl3 python3 && \
89 COPY --from=ricbuild /etc/xapp/* /etc/xapp/
90 COPY --from=ricbuild /usr/local/bin/adm-ctrl-xapp /usr/local/bin/adm-ctrl-xapp
91 #COPY --from=ricbuild /usr/local/bin/e2e-test-client /usr/local/bin/e2e-test-client
92 #COPY --from=ricbuild /usr/local/bin/mock-e2term-server /usr/local/bin/mock-e2term-server
93 #COPY --from=ricbuild /usr/local/bin/e2e-perf-client /usr/local/bin/e2e-perf-client
94 #COPY --from=ricbuild /usr/local/bin/e2e-perf-server /usr/local/bin/e2e-perf-server
95 #COPY --from=ricbuild /usr/local/bin/mock-a1-server /usr/local/bin/mock-a1-server
101 #ENV PYTHONHOME=/opt/python3 \
102 # PYTHONPATH=/opt/python3 \
103 ENV RMR_RTG_SVC="127.0.0.1" \
110 CONFIG_FILE=/opt/ric/config/config-file.json
114 CMD python3 /etc/xapp/init_script.py $CONFIG_FILE