blob: a0dd473d4ce1e6db35da93ab804b813e1bdf19cb [file] [log] [blame]
Tommy Carpenter78ba2732020-02-07 14:06:20 -05001# ==================================================================================
2# Copyright (c) 2020 Nokia
3# Copyright (c) 2020 AT&T Intellectual Property.
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
18# This Dockerfile uses a two stage Docker build
Tommy Carpenter2c1c4e92020-04-07 08:36:42 -040019FROM nexus3.o-ran-sc.org:10004/bldr-alpine3-go:5-a3.11-nng-rmr3
Tommy Carpenter78ba2732020-02-07 14:06:20 -050020
21# go will complain if there is a go.mod at the root of the GOPATH so we can't.
22RUN mkdir myxapp
23COPY receiver.go myxapp/receiver.go
24COPY go.mod myxapp/go.mod
25
26# do the build
27WORKDIR myxapp
28ENV GO111MODULE on
29ENV GO_ENABLED 0
30ENV GOOS linux
31RUN go build -a -installsuffix cgo -o receiver receiver.go
32
33# 2nd stage
34FROM alpine:3.11
Lott, Christopher (cl778h)f7ddd992020-04-22 09:05:32 -040035
36# copy rmr .so from builder image in lieu of an Alpine package
37COPY --from=nexus3.o-ran-sc.org:10002/o-ran-sc/bldr-alpine3-rmr:3.8.0 /usr/local/lib64/librmr_si.so /usr/local/lib64/librmr_si.so
38
Tommy Carpenter78ba2732020-02-07 14:06:20 -050039COPY --from=0 /go/myxapp/receiver .
40COPY query-config-file.yaml .
41
42# rmr setup
43RUN mkdir -p /opt/route/
44ENV LD_LIBRARY_PATH /usr/local/lib:/usr/local/lib64
45ENV RMR_SEED_RT /opt/route/local.rt
46
47CMD ["./receiver", "-f", "query-config-file.yaml"]