RIC:1060: Change in PTL
[ric-plt/vespamgr.git] / Dockerfile
old mode 100644 (file)
new mode 100755 (executable)
index ec5fd57..c61aded
 #   This source code is part of the near-RT RIC (RAN Intelligent Controller)
 #   platform project (RICP).
 #
-# Start from golang v1.12 base image
-FROM golang:1.12 as gobuild
+
+FROM golang:1.16 as gobuild
+
+# Install utilities
+RUN apt update && apt install -y iputils-ping net-tools curl sudo
 
 # Set the Working Directory for ves-agent inside the container
 RUN mkdir -p $GOPATH/src/VESPA
@@ -28,38 +31,39 @@ WORKDIR $GOPATH/src/VESPA
 RUN git clone -b v0.3.0 https://github.com/nokia/ONAP-VESPA.git $GOPATH/src/VESPA
 
 RUN GO111MODULE=on go mod download
+ENV GOLANG_VERSION 1.16
+RUN wget --quiet https://dl.google.com/go/go$GOLANG_VERSION.linux-amd64.tar.gz \
+       && tar xvzf go$GOLANG_VERSION.linux-amd64.tar.gz -C /usr/local
 
 # Install VES Agent
 RUN export GOPATH=$HOME/go && \
     export PATH=$GOPATH/bin:$GOROOT/bin:$PATH && \
     go install -v ./ves-agent
 
-# Set the Working Directory for vesmgr inside the container
-RUN mkdir -p $GOPATH/src/vesmgr
-WORKDIR $GOPATH/src/vesmgr
-
-# Copy vesmgr to the Working Directory
-COPY $HOME/ .
+# Set the Working Directory for vespamgr inside the container
+RUN mkdir -p /go/src/vespamgr
+RUN mkdir -p /cfg
+COPY . /go/src/vespamgr
+WORKDIR /go/src/vespamgr
 
 RUN ./build_vesmgr.sh
 
-#################
-#
-# Second phase, copy compiled stuff to a runtime container
+# Final, executable and deployable container
+FROM ubuntu:20.04
 
-# Ubuntu or something smaller?
-FROM ubuntu:18.04
-# For trouble-shooting
-RUN apt-get update; apt-get install -y \
-    iputils-ping \
-    net-tools \
-    curl \
-    tcpdump
-
-# Create the configuration directory for ves agent
 RUN mkdir -p /etc/ves-agent
-COPY --from=gobuild root/go/bin /root/go/bin
+
+COPY --from=gobuild /usr/local/lib /usr/local/lib
+COPY --from=gobuild /root/go/bin /root/go/bin
+COPY --from=gobuild /root/go/bin/vespamgr /usr/local/bin/vesmgr
+COPY --from=gobuild /root/go/bin/vespamgr /vespamgr
+COPY --from=gobuild /go/src/vespamgr/config/* /cfg/
+COPY --from=gobuild /go/src/vespamgr/config/plt-counter.json /cfg/plt-counter.json
+RUN ldconfig
+
+ENV CFG_FILE=/cfg/config-file.json
+ENV RMR_SEED_RT=/cfg/uta_rtg.rt
 
 ENV PATH="/root/go/bin:${PATH}"
 
-ENTRYPOINT ["vesmgr"]
+ENTRYPOINT ["/vespamgr"]