1 FROM kumarsandeep3/hcl-bouncer-base-image-ubntu-20:1.0.0 as buildenv
6 COPY e2sm_kpm/ e2sm_kpm/
8 # "COMPILING E2AP Wrapper"
10 gcc -c -fPIC -Iheaders/ lib/*.c wrapper.c && \
11 gcc *.o -shared -o libe2apwrapper.so && \
12 cp libe2apwrapper.so /usr/local/lib/ && \
13 mkdir /usr/local/include/e2ap && \
14 cp wrapper.h headers/*.h /usr/local/include/e2ap && \
16 # "COMPILING E2SM-KPM Wrapper"
18 gcc -c -fPIC -Iheaders/ lib/*.c wrapper.c && \
19 gcc *.o -shared -o libe2smkpmwrapper.so&& \
20 cp libe2smkpmwrapper.so /usr/local/lib/ && \
21 mkdir /usr/local/include/e2sm_kpm && \
22 cp wrapper.h headers/*.h /usr/local/include/e2sm_kpm && \
24 # "COMPILING E2SM-RC Wrapper"
26 gcc -c -fPIC -Iheaders/ lib/*.c wrapper.c && \
27 gcc *.o -shared -o libe2smrcwrapper.so&& \
28 cp libe2smrcwrapper.so /usr/local/lib/ && \
29 mkdir /usr/local/include/e2sm_rc && \
30 cp wrapper.h headers/*.h /usr/local/include/e2sm_rc && \
34 # ----- copy files and source code ----------------------------------
37 COPY xapp-descriptor/ xapp-descriptor/
41 RUN g++ -std=c++17 /lite/src/*.cpp -I /lite/src/ -I /lite/e2ap/headers -I /lite/e2sm_kpm/headers -I /lite/e2sm_rc/headers -o bouncer-xapp -lricxfcpp -lrmr_si -lpthread -lm -lboost_system -lcrypto -lssl -lcpprest -lpistache -lnlohmann_json_schema_validator -le2apwrapper -le2smrcwrapper -le2smrcwrapper
43 RUN cp bouncer-xapp /usr/local/bin/
45 # ----- create final, smaller, image ----------------------------------
51 COPY --from=buildenv /usr/local/lib /usr/local/lib/
53 COPY --from=buildenv /lib/x86_64-linux-gnu/libcrypto.so.1.1 /lib/x86_64-linux-gnu/libcrypto.so.1.1
54 COPY --from=buildenv /lib/x86_64-linux-gnu/libssl.so.1.1 /lib/x86_64-linux-gnu/libssl.so.1.1
56 COPY --from=buildenv /usr/local/include /usr/local/include
57 COPY --from=buildenv /usr/local/bin/ /usr/local/bin/
58 COPY --from=buildenv /lite/routes.txt /lite/routes.txt
60 ENV RMR_SEED_RT=/lite/routes.txt
61 ENV RMR_SRC_ID=service-ricxapp-bouncer-xapp-rmr.ricxapp:4560
62 ENV PATH=/usr/local/bin:$PATH
63 ENV LD_LIBRARY_PATH=/usr/local/lib64:/usr/local/lib
66 CMD [ "/usr/local/bin/bouncer-xapp" ]