X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=Dockerfile;h=168359ba0dba0d198ee5d271f49fbe6fc85d4180;hb=refs%2Fchanges%2F20%2F5920%2F1;hp=de491db54f45d908f71f83637f704156c9827120;hpb=9a9ecfe2f3f3592c07c24e502b4ce252cf3bd377;p=ric-plt%2Fvespamgr.git diff --git a/Dockerfile b/Dockerfile old mode 100644 new mode 100755 index de491db..168359b --- a/Dockerfile +++ b/Dockerfile @@ -13,10 +13,16 @@ # 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. +# +# 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 +# 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 WORKDIR $GOPATH/src/VESPA @@ -31,41 +37,30 @@ 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 GO111MODULE=on go mod download - -# Run vesmgr UT -RUN export GOPATH=$HOME/go && \ - export PATH=$GOPATH/bin:$GOROOT/bin:$PATH && \ - go test ./... +RUN ./build_vesmgr.sh -# Install vesmgr -RUN export GOPATH=$HOME/go && \ - export PATH=$GOPATH/bin:$GOROOT/bin:$PATH && \ - go install -v ./cmd/vesmgr - -################# -# -# Second phase, copy compiled stuff to a runtime container - -# Ubuntu or something smaller? +# Final, executable and deployable container FROM ubuntu:18.04 -# For trouble-shooting -RUN apt-get update; apt-get install -y \ - iputils-ping \ - net-tools \ - curl -# 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"]