X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=Dockerfile;h=6fceabfa478dec652e2f259d4dc25ce3f57bf724;hb=HEAD;hp=d79ae7729d91af5519caa8e1337bc8d1b9f0b693;hpb=2e033d992a0bf7ad8edd4dc1a859bf3e085502bd;p=ric-plt%2Fo1.git diff --git a/Dockerfile b/Dockerfile index d79ae77..6fceabf 100755 --- a/Dockerfile +++ b/Dockerfile @@ -14,7 +14,12 @@ # limitations under the License. #---------------------------------------------------------- -FROM nexus3.o-ran-sc.org:10002/o-ran-sc/bldr-ubuntu18-c-go:1.9.0 AS o1mediator-build +FROM nexus3.o-ran-sc.org:10002/o-ran-sc/bldr-ubuntu20-c-go:1.0.0 AS o1mediator-build + +RUN apt update && apt install --reinstall -y \ + ca-certificates \ + && \ + update-ca-certificates RUN apt-get update -y && apt-get install -y jq \ git \ @@ -28,13 +33,15 @@ RUN apt-get update -y && apt-get install -y jq \ libev-dev \ libprotobuf-c-dev \ protobuf-c-compiler \ - libssh-dev \ + #libssh-dev \ libssl-dev \ swig \ iputils-ping \ python-dev - -ENV PATH="/usr/local/go/bin:${PATH}" +#ENV GOLANG_VERSION 1.13.10 +#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 +#ENV PATH="/usr/local/go/bin:${PATH}" ENV GOPATH="/go" # ====================================================================== @@ -58,17 +65,16 @@ WORKDIR /opt/dev # libyang RUN \ cd /opt/dev && \ - git clone https://github.com/CESNET/libyang.git && \ + git clone -b libyang1 https://github.com/CESNET/libyang.git && \ cd libyang && mkdir build && cd build && \ cmake -DCMAKE_BUILD_TYPE:String="Release" -DENABLE_BUILD_TESTS=OFF .. && \ make -j2 && \ make install && \ ldconfig - # sysrepo RUN \ cd /opt/dev && \ - git clone https://github.com/sysrepo/sysrepo.git && \ + git clone -b libyang1 https://github.com/sysrepo/sysrepo.git && \ cd sysrepo && sed -i -e 's/2000/30000/g;s/5000/30000/g' src/common.h.in && \ mkdir build && cd build && \ cmake -DCMAKE_BUILD_TYPE:String="Release" -DENABLE_TESTS=OFF -DREPOSITORY_LOC:PATH=/etc/sysrepo .. && \ @@ -76,7 +82,7 @@ RUN \ make install && make sr_clean && \ ldconfig -# libssh 0.8.0 +# libssh Newest RUN \ cd /opt/dev && \ git clone https://git.libssh.org/projects/libssh.git && cd libssh && \ @@ -88,7 +94,7 @@ RUN \ # libnetconf2 RUN \ cd /opt/dev && \ - git clone https://github.com/CESNET/libnetconf2.git && \ + git clone -b libyang1 https://github.com/CESNET/libnetconf2.git && \ cd libnetconf2 && mkdir build && cd build && \ cmake -DCMAKE_BUILD_TYPE:String="Release" -DENABLE_BUILD_TESTS=OFF .. && \ make -j2 && \ @@ -98,7 +104,7 @@ RUN \ # netopeer2 RUN \ cd /opt/dev && \ - git clone https://github.com/CESNET/Netopeer2.git && \ + git clone -b libyang1 https://github.com/CESNET/Netopeer2.git && \ cd Netopeer2 && mkdir build && cd build && \ cmake -DCMAKE_BUILD_TYPE:String="Release" -DNP2SRV_DATA_CHANGE_TIMEOUT=30000 -DNP2SRV_DATA_CHANGE_WAIT=ON .. && \ make -j2 && \ @@ -107,7 +113,7 @@ RUN \ # ====================================================================== # RMR -ARG RMRVERSION=4.5.2 +ARG RMRVERSION=4.9.4 ARG RMRLIBURL=https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/rmr_${RMRVERSION}_amd64.deb/download.deb ARG RMRDEVURL=https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/rmr-dev_${RMRVERSION}_amd64.deb/download.deb @@ -156,9 +162,9 @@ RUN /usr/local/bin/sysrepoctl -i /go/src/ws/agent/yang/o-ran-sc-ric-alarm-v1.yan CMD ["/bin/bash"] #---------------------------------------------------------- -FROM ubuntu:18.04 as o1mediator +FROM ubuntu:20.04 as o1mediator -RUN apt-get update -y && apt-get install -y jq \ +RUN apt-get update -y && DEBIAN_FRONTEND=noninteractive apt-get install -y jq \ net-tools \ tcpdump \ netcat \ @@ -166,23 +172,33 @@ RUN apt-get update -y && apt-get install -y jq \ nano \ supervisor \ openssl \ - python-pip \ + python3-pip \ libpcre3-dev \ pkg-config \ libavl-dev \ libev-dev \ libprotobuf-c-dev \ protobuf-c-compiler \ - libssh-dev \ + #libssh-dev \ libssl-dev \ swig \ python-dev \ - && pip install supervisor-stdout \ - && pip install psutil \ + wget \ + && pip3 install supervisor-stdout \ + && pip3 install psutil \ && apt-get clean +# Install psutil for python2.X +RUN wget https://bootstrap.pypa.io/pip/2.7/get-pip.py \ + && python get-pip.py \ + && python -m pip install psutil + RUN rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* +# update password policy +RUN \ + sed -i 's/pam_unix.so obscure sha512/pam_unix.so obscure sha512 rounds=12000/' /etc/pam.d/common-password + # add netconf user RUN \ adduser --system netconf && \ @@ -207,6 +223,10 @@ COPY --from=o1mediator-build /usr/local/bin/ /usr/local/bin/ COPY --from=o1mediator-build /usr/local/lib/ /usr/local/lib/ COPY --from=o1mediator-build /usr/local/bin/kubectl /usr/local/bin/kubectl +COPY --from=o1mediator-build /usr/include/libssh/ /usr/include/libssh/ +COPY --from=o1mediator-build /usr/lib/x86_64-linux-gnu/libssh.so.4.* /usr/lib/x86_64-linux-gnu/ +RUN ln -s libssh.so.4 /usr/lib/x86_64-linux-gnu/libssh.so + RUN ldconfig # copy yang models with data