X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=e2sim%2Fe2sm_examples%2Fkpm_e2sm%2FDockerfile;fp=e2sim%2Fe2sm_examples%2Fkpm_e2sm%2FDockerfile;h=6b16671028f7b3d02260e6f9997f4c18d73d1677;hb=a9733dbcc47e93a3b2843056f1d587196296c324;hp=0000000000000000000000000000000000000000;hpb=3ebf932d23dcbec9ed19f4a51f9d00a0a54f5124;p=sim%2Fe2-interface.git diff --git a/e2sim/e2sm_examples/kpm_e2sm/Dockerfile b/e2sim/e2sm_examples/kpm_e2sm/Dockerfile new file mode 100644 index 0000000..6b16671 --- /dev/null +++ b/e2sim/e2sm_examples/kpm_e2sm/Dockerfile @@ -0,0 +1,102 @@ +# vim: ts=4 sw=4 noet: +#================================================================================== +# Copyright (c) 2018-2019 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. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +#================================================================================== + + +# -------------------------------------------------------------------------------------- +# Mnemonic: Dockerfile +# Abstract: This dockerfile is used to create an image that can be used to +# run the traffic steering xAPP in a container. +# +# Building should be as simple as: +# +# docker build -f Dockerfile -t ric-app-ts:[version] +# +# Date: 27 April 2020 +# Author: E. Scott Daniels +# -------------------------------------------------------------------------------------- + +# the builder has: git, wget, cmake, gcc/g++, make, python2/3. v7 dropped nng support +# +FROM nexus3.o-ran-sc.org:10004/o-ran-sc/bldr-ubuntu18-c-go:8-u18.04 as buildenv + +# spaces to save things in the build image to copy to final image +RUN mkdir -p /playpen/assets /playpen/src /playpen/bin +ARG SRC=. + +WORKDIR /playpen + +# versions we snarf from package cloud +ARG E2SIM_VER=1.0.0 + +# package cloud urls for wget +ARG PC_REL_URL=https://packagecloud.io/o-ran-sc/release/packages/debian/stretch +ARG PC_STG_URL=https://packagecloud.io/o-ran-sc/staging/packages/debian/stretch + + +# snarf up E2SIM dependencies, then pull E2SIM package and install +# Dependencies: sctp + +RUN apt-get update \ + && apt-get install -y \ + build-essential \ + git \ + cmake \ + libsctp-dev \ + lksctp-tools \ + autoconf \ + automake \ + libtool \ + bison \ + flex \ + libboost-all-dev \ + iputils-ping \ + net-tools \ + nano \ + vim \ + tcpdump \ + net-tools \ + nmap \ + && apt-get clean + + +RUN wget -nv --content-disposition ${PC_STG_URL}/sdl_${SDL_VER}-1_amd64.deb/download.deb && \ + wget -nv --content-disposition ${PC_STG_URL}/sdl-dev_${SDL_VER}-1_amd64.deb/download.deb &&\ + dpkg -i sdl-dev_${SDL_VER}-1_amd64.deb sdl_${SDL_VER}-1_amd64.deb + +# +# build and install the application(s) +# + + +#COPY e2sim_1.0.0_amd64.deb /playpen +#COPY e2sim-dev_1.0.0_amd64.deb /playpen + +RUN dpkg -i e2sim_1.0.0_amd64.deb e2sim-dev_1.0.0_amd64.deb + +RUN mkdir /usr/local/include/nlohmann +COPY nlohmann_json_release/json.hpp /usr/local/include/nlohmann + +COPY . /playpen/src/ +RUN cd /playpen/src && \ + rm -fr .build &&\ + mkdir .build && \ + cd .build && \ + cmake .. && \ + make install + + +CMD [ "/usr/local/bin/ts_xapp" ]