blob: 7cbc8ac9e14d3dd6926d3a0a8d797c8409eee622 [file] [log] [blame]
Abukar Mohamedbf6780b2020-03-19 13:08:53 +00001#==================================================================================
2# Copyright (c) 2020 AT&T Intellectual Property.
3# Copyright (c) 2020 Nokia
4#
5# Licensed under the Apache License, Version 2.0 (the "License");
6# you may not use this file except in compliance with the License.
7# You may obtain a copy of the License at
8#
9# http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing, software
12# distributed under the License is distributed on an "AS IS" BASIS,
13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
16#
17# This source code is part of the near-RT RIC (RAN Intelligent Controller)
18# platform project (RICP).
19#==================================================================================
20
Mohamed Abukar587d21a2021-01-15 15:21:45 +020021FROM nexus3.o-ran-sc.org:10002/o-ran-sc/bldr-ubuntu18-c-go:1.9.0 as ubuntu-example-xapp
Abukar Mohamedbf6780b2020-03-19 13:08:53 +000022
23# Install utilities
24RUN apt update && apt install -y iputils-ping net-tools curl sudo
25
26# Install RMr shared library & development header files
27RUN wget --content-disposition https://packagecloud.io/o-ran-sc/staging/packages/debian/stretch/rmr_3.5.0_amd64.deb/download.deb && dpkg -i rmr_3.5.0_amd64.deb && rm -rf rmr_3.5.0_amd64.deb
28RUN wget --content-disposition https://packagecloud.io/o-ran-sc/staging/packages/debian/stretch/rmr-dev_3.5.0_amd64.deb/download.deb && dpkg -i rmr-dev_3.5.0_amd64.deb && rm -rf rmr-dev_3.5.0_amd64.deb
29
30# Install dependencies, compile and test the module
31RUN mkdir -p /go/src/example-xapp
32COPY . /go/src/example-xapp
33
34WORKDIR "/go/src/example-xapp"
35#RUN ./build/build_example_xapp.sh
36
37ENV CFG_FILE=config/config-file.json
38ENV RMR_SEED_RT=config/uta_rtg.rt
39ENV GO111MODULE=on GO_ENABLED=0 GOOS=linux
40
41RUN go build -a -installsuffix cgo -o example_xapp cmd/example-xapp.go
42
43# Final, executable and deployable container
44FROM ubuntu:18.04
45
46COPY --from=ubuntu-example-xapp /go/src/example-xapp/build/run_example_xapp.sh /
47COPY --from=ubuntu-example-xapp /go/src/example-xapp/example_xapp /
48COPY --from=ubuntu-example-xapp /go/src/example-xapp/config/* /
49COPY --from=ubuntu-example-xapp /usr/local/lib /usr/local/lib
50
51RUN ldconfig
52
53RUN chmod 755 /run_example_xapp.sh
54CMD /run_example_xapp.sh