From f96d4505d8c354edc2a64347254d16b49267beb6 Mon Sep 17 00:00:00 2001 From: Radoslav Dimitrov Date: Tue, 17 Dec 2019 16:57:58 +0200 Subject: [PATCH 1/9] Draft build support for CentOS 8 Signed-off-by: Radoslav Dimitrov --- hack/build_images | 17 ++-- images/oai-build-base/Dockerfile.centos8 | 77 +++++++++++++++++++ images/oai-enb/Dockerfile.centos8 | 64 +++++++++++++++ images/oai-gnb/Dockerfile.centos8 | 63 +++++++++++++++ images/oai-hss/Dockerfile.centos8 | 58 ++++++++++++++ images/oai-mme/Dockerfile.centos8 | 54 +++++++++++++ images/oai-nrue/Dockerfile.centos8 | 62 +++++++++++++++ images/oai-spgwc/Dockerfile.centos8 | 46 +++++++++++ images/oai-spgwu/Dockerfile.centos8 | 44 +++++++++++ images/oai-ue/Dockerfile.centos8 | 61 +++++++++++++++ images/rt-tests-cyclictest/Dockerfile.centos8 | 20 +++++ 11 files changed, 561 insertions(+), 5 deletions(-) create mode 100644 images/oai-build-base/Dockerfile.centos8 create mode 100644 images/oai-enb/Dockerfile.centos8 create mode 100644 images/oai-gnb/Dockerfile.centos8 create mode 100644 images/oai-hss/Dockerfile.centos8 create mode 100644 images/oai-mme/Dockerfile.centos8 create mode 100644 images/oai-nrue/Dockerfile.centos8 create mode 100644 images/oai-spgwc/Dockerfile.centos8 create mode 100644 images/oai-spgwu/Dockerfile.centos8 create mode 100644 images/oai-ue/Dockerfile.centos8 create mode 100644 images/rt-tests-cyclictest/Dockerfile.centos8 diff --git a/hack/build_images b/hack/build_images index 0dad294..302b7a6 100755 --- a/hack/build_images +++ b/hack/build_images @@ -2,12 +2,17 @@ source /etc/os-release PLATFORM=${PLATFORM:-${ID#rh*}${VERSION_ID%.*}} +DOCKERFILE_SUFIX=rh${PLATFORM} KERNEL_VERSION=${KERNEL_VERSION:-$(uname -r)} KERNEL_VERSION=${KERNEL_VERSION%*.x86_64} REGISTRY=${REGISTRY:-registry.redhat.io} BUILD_ARGS=${BUILD_ARGS:-"--no-cache"} IMAGES=$(find images -type f -name Dockerfile* | sed 's|images/||g' | sed 's|/Dockerfile[a-z0-9.]*||g' | sort | uniq | xargs) +if [[ $PLATFORM == *"centos"* ]]; then + DOCKERFILE_SUFIX=${PLATFORM} +fi + info() { local MESSAGE=$1 @@ -34,8 +39,8 @@ build_image() { # Default to building from Dockerfile. If there's a platform-specific Dockerfile # use that instead and append the platform name to the image tag. DOCKERFILE="Dockerfile" - if [ -f images/$IMAGE/Dockerfile.rh${PLATFORM} ]; then - DOCKERFILE="Dockerfile.rh${PLATFORM}" + if [ -f images/$IMAGE/Dockerfile.${DOCKERFILE_SUFIX} ]; then + DOCKERFILE="Dockerfile.${DOCKERFILE_SUFIX}" CLEAN_TAG="${CLEAN_TAG}.${PLATFORM}" fi @@ -81,7 +86,9 @@ if [ $# -ne 0 ]; then IMAGES=$* fi -podman login ${REGISTRY} +if [[ $PLATFORM != *"centos"* ]]; then + podman login ${REGISTRY} +fi IMAGES="oai-build-base ${IMAGES/oai-build-base/}" @@ -92,8 +99,8 @@ for i in $IMAGES; do TAG=${i#*:} # if no git_tag specified, grep default from Dockerfile if [ "$IMG" = "$TAG" ]; then - if [ -f images/$IMG/Dockerfile.rh${PLATFORM} ]; then - TAG=$(grep -oP "ARG GIT_TAG=\K[a-zA-Z0-9.-]+" images/$IMG/Dockerfile.rh${PLATFORM} || echo "latest") + if [ -f images/$IMG/Dockerfile.${DOCKERFILE_SUFIX} ]; then + TAG=$(grep -oP "ARG GIT_TAG=\K[a-zA-Z0-9.-]+" images/$IMG/Dockerfile.${DOCKERFILE_SUFIX} || echo "latest") else TAG=$(grep -oP "ARG GIT_TAG=\K[a-zA-Z0-9.-]+" images/$IMG/Dockerfile || echo "latest") fi diff --git a/images/oai-build-base/Dockerfile.centos8 b/images/oai-build-base/Dockerfile.centos8 new file mode 100644 index 0000000..0f62323 --- /dev/null +++ b/images/oai-build-base/Dockerfile.centos8 @@ -0,0 +1,77 @@ +FROM centos:8 + +ARG GIT_TAG=latest +LABEL name="oai-build-base" \ + version="${GIT_TAG}.el8" \ + io.k8s.description="Image containing all build dependencies for openairinterface5g and openair-cn." + +WORKDIR /root +RUN yum -y install --enablerepo="PowerTools" \ + git make cmake gcc gcc-c++ autoconf automake bc bison flex libtool patch \ + atlas-devel \ + blas \ + blas-devel \ + boost \ + boost-devel \ + bzip2-devel \ + check \ + check-devel \ + elfutils-libelf-devel \ + gflags-devel \ + glog-devel \ + gmp-devel \ + gnutls-devel \ + guile-devel \ + kernel-devel \ + kernel-headers \ + lapack \ + lapack-devel \ + libasan \ + libconfig-devel \ + libevent-devel \ + libffi-devel \ + libgcrypt-devel \ + libidn-devel \ + libidn2-devel \ + libtool \ + libusb-devel \ + libusbx-devel \ + libxml2-devel \ + libXpm-devel \ + libxslt-devel \ + libyaml-devel \ + lksctp-tools \ + lksctp-tools-devel \ + lz4-devel \ + mariadb-devel \ + nettle-devel \ + openssh-clients \ + openssh-server \ + openssl \ + openssl-devel \ + pkgconfig \ + protobuf \ + protobuf-c \ + protobuf-c-compiler \ + protobuf-c-devel \ + psmisc \ + python2 \ + python2-docutils \ + python2-requests \ + vim-common \ + xz-devel \ + zlib-devel \ + && yum install -y http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/x/xforms-1.2.4-5.el7.x86_64.rpm \ + && yum install -y http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/x/xforms-devel-1.2.4-5.el7.x86_64.rpm \ + && yum clean all -y \ + && rm -rf /var/cache/yum \ + && pip2 install --user mako pexpect + +# RUN git clone https://gist.github.com/2190472.git /opt/ssh + +RUN if [ "$EURECOM_PROXY" == true ]; then git config --global http.proxy http://:@proxy.eurecom.fr:8080; fi + +# build packages not present in RHEL/EPEL repos +COPY patches patches/ +COPY scripts scripts/ +RUN scripts/build_missing_packages diff --git a/images/oai-enb/Dockerfile.centos8 b/images/oai-enb/Dockerfile.centos8 new file mode 100644 index 0000000..0014131 --- /dev/null +++ b/images/oai-enb/Dockerfile.centos8 @@ -0,0 +1,64 @@ +ARG REGISTRY=localhost +FROM $REGISTRY/oai-build-base:latest.centos8 AS builder + +ARG GIT_TAG=v1.1.1 + +WORKDIR /root + +RUN if [ "$EURECOM_PROXY" == true ]; then git config --global http.proxy http://:@proxy.eurecom.fr:8080; fi + +RUN git clone --depth=1 --branch=$GIT_TAG https://gitlab.eurecom.fr/oai/openairinterface5g.git +COPY patches patches/ +RUN patch -p1 -d openairinterface5g < patches/disable_building_nasmesh_and_rbtool.patch \ + && patch -p1 -d openairinterface5g < patches/disable_sched_fifo_fail_exits.patch +RUN cd openairinterface5g/cmake_targets \ + && ln -sf /usr/local/bin/asn1c_oai /usr/local/bin/asn1c \ + && ln -sf /usr/local/share/asn1c_oai /usr/local/share/asn1c \ + && ./build_oai -c --eNB -w USRP --verbose-compile + + +FROM centos:8 +LABEL name="oai-enb" \ + version="$GIT_TAG" \ + maintainer="Frank A. Zdarsky " \ + io.k8s.description="openairinterface5g eNB $GIT_TAG." \ + io.openshift.tags="oai,enb" \ + io.openshift.non-scalable="true" + +RUN REPOLIST="PowerTools" \ + PKGLIST="boost libconfig lksctp-tools protobuf-c iproute iputils procps-ng bind-utils" \ + # && yum -y upgrade-minimal --setopt=tsflags=nodocs --security --sec-severity=Critical --sec-severity=Important && \ + && yum -y install --enablerepo ${REPOLIST} --setopt=tsflag=nodocs ${PKGLIST} \ + && yum -y install http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/x/xforms-1.2.4-5.el7.x86_64.rpm \ + && yum -y clean all \ + && rm -rf /var/cache/yum + +ENV APP_ROOT=/opt/oai-enb +ENV PATH=${APP_ROOT}:${PATH} HOME=${APP_ROOT} +COPY --from=builder /root/openairinterface5g/cmake_targets/lte_build_oai/build/lte-softmodem ${APP_ROOT}/bin/ +COPY --from=builder /root/openairinterface5g/cmake_targets/lte_build_oai/build/*.so* /lib64 +COPY --from=builder /usr/local/lib64 /lib64 +COPY --from=builder /usr/local/bin/uhd_* /usr/local/bin +COPY --from=builder /usr/local/share/uhd /usr/local/share/uhd +RUN cd /lib64 \ + && ln -sf liboai_eth_transpro.so liboai_transpro.so \ + && ln -sf liboai_usrpdevif.so liboai_device.so \ + && ln -sf libuhd.so.3.13 libuhd.so.3 \ + && ln -sf libuhd.so.3 libuhd.so +COPY scripts ${APP_ROOT}/bin/ +COPY configs ${APP_ROOT}/etc/ +RUN chmod -R u+x ${APP_ROOT} && \ + chgrp -R 0 ${APP_ROOT} && \ + chmod -R g=u ${APP_ROOT} /etc/passwd +USER 10001 +WORKDIR ${APP_ROOT} + +EXPOSE 2152/udp # S1U, GTP/UDP +EXPOSE 22100/tcp # ? +EXPOSE 36412/udp # S1C, SCTP/UDP +EXPOSE 36422/udp # X2C, SCTP/UDP +EXPOSE 50000/udp # IF5 / ORI (control) +EXPOSE 50001/udp # IF5 / ECPRI (data) + +CMD ["/opt/oai-enb/bin/lte-softmodem", "-O", "/opt/oai-enb/etc/enb.conf"] +ENTRYPOINT ["/opt/oai-enb/bin/entrypoint.sh"] diff --git a/images/oai-gnb/Dockerfile.centos8 b/images/oai-gnb/Dockerfile.centos8 new file mode 100644 index 0000000..4a9ad2a --- /dev/null +++ b/images/oai-gnb/Dockerfile.centos8 @@ -0,0 +1,63 @@ +ARG REGISTRY=localhost +FROM $REGISTRY/oai-build-base:latest.centos8 AS builder + +ARG GIT_TAG=develop-nr + +WORKDIR /root + +RUN if [ "$EURECOM_PROXY" == true ]; then git config --global http.proxy http://:@proxy.eurecom.fr:8080; fi + +RUN git clone --depth=1 --branch=$GIT_TAG https://gitlab.eurecom.fr/oai/openairinterface5g.git +COPY patches patches/ +RUN patch -p1 -d openairinterface5g < patches/disable_building_nasmesh_rbtools_ue_ip.patch +RUN cd openairinterface5g/cmake_targets \ + && ln -sf /usr/local/bin/asn1c_oai /usr/local/bin/asn1c \ + && ln -sf /usr/local/share/asn1c_oai /usr/local/share/asn1c \ + && ./build_oai --gNB -w USRP --verbose-compile + + +FROM centos:8 +LABEL name="oai-gnb" \ + version="$GIT_TAG" \ + maintainer="Frank A. Zdarsky " \ + io.k8s.description="openairinterface5g gNB $GIT_TAG." \ + io.openshift.tags="oai,gnb" \ + io.openshift.non-scalable="true" + +RUN REPOLIST="PowerTools" \ + && PKGLIST="atlas blas boost lapack libconfig libusb libusbx lksctp-tools protobuf-c iproute iputils procps-ng bind-utils" \ + # && yum -y upgrade-minimal --setopt=tsflags=nodocs --security --sec-severity=Critical --sec-severity=Important \ + && yum -y install --enablerepo ${REPOLIST} --setopt=tsflag=nodocs ${PKGLIST} \ + && yum install -y http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/x/xforms-1.2.4-5.el7.x86_64.rpm \ + && yum -y clean all \ + && rm -rf /var/cache/yum + +ENV APP_ROOT=/opt/oai-gnb +ENV PATH=${APP_ROOT}:${PATH} HOME=${APP_ROOT} +COPY --from=builder /root/openairinterface5g/cmake_targets/ran_build/build/nr-softmodem ${APP_ROOT}/bin/ +COPY --from=builder /root/openairinterface5g/cmake_targets/ran_build/build/*.so* /lib64 +COPY --from=builder /usr/local/lib64 /lib64 +COPY --from=builder /usr/local/bin/uhd_* /usr/local/bin +COPY --from=builder /usr/local/share/uhd /usr/local/share/uhd +RUN cd /lib64 \ + && ln -sf liboai_eth_transpro.so liboai_transpro.so \ + && ln -sf liboai_usrpdevif.so liboai_device.so \ + && ln -sf libuhd.so.3.13 libuhd.so.3 \ + && ln -sf libuhd.so.3 libuhd.so +COPY scripts ${APP_ROOT}/bin/ +COPY configs ${APP_ROOT}/etc/ +RUN chmod -R u+x ${APP_ROOT} && \ + chgrp -R 0 ${APP_ROOT} && \ + chmod -R g=u ${APP_ROOT} /etc/passwd +USER 10001 +WORKDIR ${APP_ROOT} + +EXPOSE 2152/udp # S1U, GTP/UDP +EXPOSE 22100/tcp # ? +EXPOSE 36412/udp # S1C, SCTP/UDP +EXPOSE 36422/udp # X2C, SCTP/UDP +EXPOSE 50000/udp # IF5 / ORI (control) +EXPOSE 50001/udp # IF5 / ECPRI (data) + +CMD ["/opt/oai-gnb/bin/nr-softmodem", "-O", "/opt/oai-gnb/etc/gnb.conf"] +ENTRYPOINT ["/opt/oai-gnb/bin/entrypoint.sh"] diff --git a/images/oai-hss/Dockerfile.centos8 b/images/oai-hss/Dockerfile.centos8 new file mode 100644 index 0000000..9a3e523 --- /dev/null +++ b/images/oai-hss/Dockerfile.centos8 @@ -0,0 +1,58 @@ +ARG REGISTRY=localhost +FROM $REGISTRY/oai-build-base:latest.centos8 AS builder + +ARG GIT_TAG=develop-vco3 + +WORKDIR /root + +RUN git clone --depth=1 --branch=$GIT_TAG https://github.com/OPENAIRINTERFACE/openair-cn.git +COPY patches patches/ +RUN patch -p1 -d openair-cn < patches/enable_sudo-less_build.patch \ + && patch -p1 -d openair-cn < patches/disable_distro_check_and_rpm_install.patch \ + && patch -p1 -d openair-cn < patches/fix_libpistache_lib_path.patch +RUN cd openair-cn/scripts \ + && ln -sf /usr/local/bin/asn1c_cn /usr/local/bin/asn1c \ + && ln -sf /usr/local/share/asn1c_cn /usr/local/share/asn1c \ + && rm -rf /usr/local/lib/freeDiameter /usr/local/lib/libfd* \ + && OPENAIRCN_DIR=$(dirname $(pwd)) ./build_hss_rel14 --check-installed-software --force \ + && OPENAIRCN_DIR=$(dirname $(pwd)) ./build_hss_rel14 -v + + +FROM centos:8 +LABEL name="oai-hss" \ + version="$GIT_TAG" \ + maintainer="Frank A. Zdarsky " \ + io.k8s.description="openair-cn HSS $GIT_TAG." \ + io.openshift.tags="oai,hss" \ + io.openshift.non-scalable="true" \ + io.openshift.wants="mariadb" + +RUN REPOLIST=PowerTools \ + PKGLIST="libconfig libidn mariadb-devel lksctp-tools mysql iproute iputils procps-ng bind-utils" && \ + # yum -y upgrade-minimal --setopt=tsflags=nodocs --security --sec-severity=Critical --sec-severity=Important && \ + yum -y install --enablerepo ${REPOLIST} --setopt=tsflag=nodocs ${PKGLIST} && \ + yum -y clean all + +ENV APP_ROOT=/opt/oai-hss +ENV PATH=${APP_ROOT}:${PATH} HOME=${APP_ROOT} + +COPY --from=builder /root/openair-cn/build/hss_rel14/bin/hss ${APP_ROOT}/bin/oai_hss +COPY --from=builder /usr/local/lib/libfd* /lib64 +COPY --from=builder /usr/local/lib/freeDiameter/* /usr/local/lib/freeDiameter/ +COPY --from=builder /usr/local/lib64/libcassandra* /lib64 +COPY --from=builder /usr/local/lib64/libuv.so /lib64 +COPY scripts ${APP_ROOT}/bin/ +COPY configs ${APP_ROOT}/etc/ +RUN chmod -R u+x ${APP_ROOT} && \ + chgrp -R 0 ${APP_ROOT} && \ + chmod -R g=u ${APP_ROOT} /etc/passwd +USER 10001 +WORKDIR ${APP_ROOT} + +# expose ports configured in hss_fd.conf +EXPOSE 9042/tcp 5868/tcp 9080/tcp 9081/tcp + +VOLUME ["${APP_ROOT}/certs"] + +CMD ["/opt/oai-hss/bin/oai_hss", "-j", "/opt/oai-hss/etc/hss_rel14.json"] +ENTRYPOINT ["/opt/oai-hss/bin/entrypoint.sh"] diff --git a/images/oai-mme/Dockerfile.centos8 b/images/oai-mme/Dockerfile.centos8 new file mode 100644 index 0000000..29b351b --- /dev/null +++ b/images/oai-mme/Dockerfile.centos8 @@ -0,0 +1,54 @@ +ARG REGISTRY=localhost +FROM $REGISTRY/oai-build-base:latest.centos8 AS builder + +ARG GIT_TAG=develop-vco3 + +WORKDIR /root + +RUN git clone --depth=1 --branch=$GIT_TAG https://github.com/OPENAIRINTERFACE/openair-cn.git +COPY patches patches/ +RUN patch -p1 -d openair-cn < patches/enable_sudo-less_build.patch \ + && patch -p1 -d openair-cn < patches/disable_distro_check_and_rpm_install.patch +RUN cd openair-cn/scripts \ + && ln -sf /usr/local/bin/asn1c_cn /usr/local/bin/asn1c \ + && ln -sf /usr/local/share/asn1c_cn /usr/local/share/asn1c \ + && rm -rf /usr/local/lib/freeDiameter /usr/local/lib/libfd* \ + && OPENAIRCN_DIR=$(dirname $(pwd)) ./build_mme --check-installed-software --force \ + && OPENAIRCN_DIR=$(dirname $(pwd)) ./build_mme -c -v -b Debug + + +FROM centos:8 +LABEL name="oai-mme" \ + version="$GIT_TAG" \ + maintainer="Frank A. Zdarsky " \ + io.k8s.description="openair-cn MME $GIT_TAG." \ + io.openshift.tags="oai,mme" \ + io.openshift.non-scalable="true" + +RUN REPOLIST=PowerTools \ + PKGLIST="libconfig libasan libidn lksctp-tools iproute iputils procps-ng bind-utils" && \ + # yum -y upgrade-minimal --setopt=tsflags=nodocs --security --sec-severity=Critical --sec-severity=Important && \ + yum -y install --enablerepo ${REPOLIST} --setopt=tsflag=nodocs ${PKGLIST} && \ + yum -y clean all + +ENV APP_ROOT=/opt/oai-mme +ENV PATH=${APP_ROOT}:${PATH} HOME=${APP_ROOT} +COPY --from=builder /root/openair-cn/build/mme/build/mme ${APP_ROOT}/bin/ +COPY --from=builder /usr/local/lib/libfd* /lib64 +COPY --from=builder /usr/local/lib/freeDiameter/* /usr/local/lib/freeDiameter/ +COPY --from=builder /usr/local/lib/liblfds* /usr/lib64 +COPY scripts ${APP_ROOT}/bin/ +COPY configs ${APP_ROOT}/etc/ +RUN chmod -R u+x ${APP_ROOT} && \ + chgrp -R 0 ${APP_ROOT} && \ + chmod -R g=u ${APP_ROOT} /etc/passwd +#USER 10001 +WORKDIR ${APP_ROOT} + +# expose ports +EXPOSE 3870/tcp 5870/tcp 2123/udp + +VOLUME ["${APP_ROOT}/certs"] + +CMD ["/opt/oai-mme/bin/mme", "-c", "/opt/oai-mme/etc/mme.conf"] +ENTRYPOINT ["/opt/oai-mme/bin/entrypoint.sh"] diff --git a/images/oai-nrue/Dockerfile.centos8 b/images/oai-nrue/Dockerfile.centos8 new file mode 100644 index 0000000..668f33e --- /dev/null +++ b/images/oai-nrue/Dockerfile.centos8 @@ -0,0 +1,62 @@ +ARG REGISTRY=localhost +FROM $REGISTRY/oai-build-base:latest.centos8 AS builder + +ARG GIT_TAG=develop-nr + +WORKDIR /root + +RUN if [ "$EURECOM_PROXY" == true ]; then git config --global http.proxy http://:@proxy.eurecom.fr:8080; fi + +RUN git clone --depth=1 --branch=$GIT_TAG https://gitlab.eurecom.fr/oai/openairinterface5g.git +COPY patches patches/ +RUN patch -p1 -d openairinterface5g < patches/disable_building_nasmesh_rbtools_ue_ip.patch +RUN cd openairinterface5g/cmake_targets \ + && ln -sf /usr/local/bin/asn1c_oai /usr/local/bin/asn1c \ + && ln -sf /usr/local/share/asn1c_oai /usr/local/share/asn1c \ + && ./build_oai --nrUE -w USRP --verbose-compile + + +FROM centos:8 +LABEL name="oai-nrue" \ + version="$GIT_TAG" \ + maintainer="Frank A. Zdarsky " \ + io.k8s.description="openairinterface5g nrUE $GIT_TAG." \ + io.openshift.tags="oai,ue" \ + io.openshift.non-scalable="true" + +RUN REPOLIST="PowerTools" \ + && PKGLIST="atlas blas boost lapack libconfig libusb libusbx lksctp-tools protobuf-c iproute iputils procps-ng bind-utils" \ + # && yum -y upgrade-minimal --setopt=tsflags=nodocs --security --sec-severity=Critical --sec-severity=Important \ + && yum -y install --enablerepo ${REPOLIST} --setopt=tsflag=nodocs ${PKGLIST} \ + && yum install -y http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/x/xforms-1.2.4-5.el7.x86_64.rpm \ + && yum -y clean all \ + && rm -rf /var/cache/yum + +ENV APP_ROOT=/opt/oai-nrue +ENV PATH=${APP_ROOT}:${PATH} HOME=${APP_ROOT} +COPY --from=builder /root/openairinterface5g/cmake_targets/ran_build/build/nr-uesoftmodem ${APP_ROOT}/bin/ +COPY --from=builder /root/openairinterface5g/cmake_targets/ran_build/build/*.so* /lib64 +COPY --from=builder /usr/local/lib64 /lib64 +COPY --from=builder /usr/local/bin/uhd_* /usr/local/bin +COPY --from=builder /usr/local/share/uhd /usr/local/share/uhd +RUN cd /lib64 \ + && ln -sf liboai_eth_transpro.so liboai_transpro.so \ + && ln -sf liboai_usrpdevif.so liboai_device.so \ + && ln -sf libuhd.so.3.13 libuhd.so.3 \ + && ln -sf libuhd.so.3 libuhd.so +COPY scripts ${APP_ROOT}/bin/ +RUN chmod -R u+x ${APP_ROOT} && \ + chgrp -R 0 ${APP_ROOT} && \ + chmod -R g=u ${APP_ROOT} /etc/passwd +USER 10001 +WORKDIR ${APP_ROOT} + +EXPOSE 2152/udp # S1U, GTP/UDP +EXPOSE 22100/tcp # ? +EXPOSE 36412/udp # S1C, SCTP/UDP +EXPOSE 36422/udp # X2C, SCTP/UDP +EXPOSE 50000/udp # IF5 / ORI (control) +EXPOSE 50001/udp # IF5 / ECPRI (data) + +CMD ["/opt/oai-gnb/bin/nr-uesoftmodem", "--numerology", "1", "-r", "106", "--phy-test", "-C", "3510000000"] +ENTRYPOINT ["/opt/oai-gnb/bin/entrypoint.sh"] diff --git a/images/oai-spgwc/Dockerfile.centos8 b/images/oai-spgwc/Dockerfile.centos8 new file mode 100644 index 0000000..6e92789 --- /dev/null +++ b/images/oai-spgwc/Dockerfile.centos8 @@ -0,0 +1,46 @@ +ARG REGISTRY=localhost +FROM $REGISTRY/oai-build-base:latest.centos8 AS builder + +ARG GIT_TAG=develop-vco3 + +WORKDIR /root + +RUN git clone --depth=1 --branch=$GIT_TAG https://github.com/OPENAIRINTERFACE/openair-cn-cups.git +RUN git clone --depth=1 --branch=master https://github.com/gabime/spdlog.git openair-cn-cups/build/ext/spdlog +COPY patches patches/ +RUN patch -p1 -d openair-cn-cups < patches/enable_sudo-less_build.patch +RUN cd openair-cn-cups/build/scripts \ + && ./build_spgwc -c -v -b RelWithDebInfo -j + + +FROM centos:8 +LABEL name="oai-spgwc" \ + version="$GIT_TAG" \ + maintainer="Frank A. Zdarsky " \ + io.k8s.description="openair-cn-cups S/P-GW-C $GIT_TAG" \ + io.openshift.tags="oai,spgwc" \ + io.openshift.non-scalable="true" + +RUN REPOLIST=PowerTools \ + PKGLIST="boost libasan libconfig libevent gflags-devel glog-devel iproute iputils procps-ng bind-utils" && \ + # yum -y update-minimal --setopt=tsflags=nodocs --security --sec-severity=Important --sec-severity=Critical && \ + yum -y install --enablerepo ${REPOLIST} --setopt=tsflag=nodocs ${PKGLIST} && \ + yum -y clean all + +ENV APP_ROOT=/opt/oai-spgwc +ENV PATH=${APP_ROOT}:${PATH} HOME=${APP_ROOT} +COPY --from=builder /root/openair-cn-cups/build/spgw_c/build/spgwc ${APP_ROOT}/bin/ +COPY scripts ${APP_ROOT}/bin/ +COPY configs ${APP_ROOT}/etc/ +RUN chmod -R u+x ${APP_ROOT} && \ + chgrp -R 0 ${APP_ROOT} && \ + chmod -R g=u ${APP_ROOT} /etc/passwd +#USER 10001 +WORKDIR ${APP_ROOT} + +# expose ports +EXPOSE 2123/udp 8805/udp + +CMD ["/opt/oai-spgwc/bin/spgwc", "-c", "/opt/oai-spgwc/etc/spgw_c.conf", "-o"] +ENTRYPOINT ["/opt/oai-spgwc/bin/entrypoint.sh"] + diff --git a/images/oai-spgwu/Dockerfile.centos8 b/images/oai-spgwu/Dockerfile.centos8 new file mode 100644 index 0000000..0ef247f --- /dev/null +++ b/images/oai-spgwu/Dockerfile.centos8 @@ -0,0 +1,44 @@ +ARG REGISTRY=localhost +FROM $REGISTRY/oai-build-base:latest.centos8 AS builder + +ARG GIT_TAG=develop-vco3 + +WORKDIR /root + +RUN git clone --depth=1 --branch=$GIT_TAG https://github.com/OPENAIRINTERFACE/openair-cn-cups.git +RUN git clone --depth=1 --branch=master https://github.com/gabime/spdlog.git openair-cn-cups/build/ext/spdlog +COPY patches patches/ +RUN patch -p1 -d openair-cn-cups < patches/enable_sudo-less_build.patch +RUN cd openair-cn-cups/build/scripts \ + && ./build_spgwu -c -v -b RelWithDebInfo -j + +FROM centos:8 +LABEL name="oai-spgwu" \ + version="$GIT_TAG" \ + maintainer="Frank A. Zdarsky " \ + io.k8s.description="openair-cn-cups S/P-GW-U $GIT_TAG" \ + io.openshift.tags="oai,spgwu" \ + io.openshift.non-scalable="true" + +RUN REPOLIST=PowerTools \ + PKGLIST="boost libasan libconfig libevent gflags-devel glog-devel iproute iputils iptables procps-ng bind-utils" && \ + # yum -y update-minimal --setopt=tsflags=nodocs --security --sec-severity=Important --sec-severity=Critical && \ + yum -y install --enablerepo ${REPOLIST} --setopt=tsflag=nodocs ${PKGLIST} && \ + yum -y clean all + +ENV APP_ROOT=/opt/oai-spgwu +ENV PATH=${APP_ROOT}:${PATH} HOME=${APP_ROOT} +COPY --from=builder /root/openair-cn-cups/build/spgw_u/build/spgwu ${APP_ROOT}/bin/ +COPY scripts ${APP_ROOT}/bin/ +COPY configs ${APP_ROOT}/etc/ +RUN chmod -R u+x ${APP_ROOT} && \ + chgrp -R 0 ${APP_ROOT} && \ + chmod -R g=u ${APP_ROOT} /etc/passwd +#USER 10001 +WORKDIR ${APP_ROOT} + +# expose ports +EXPOSE 2152/udp 8805/udp + +CMD ["/opt/oai-spgwu/bin/spgwu", "-c", "/opt/oai-spgwu/etc/spgw_u.conf", "-o"] +ENTRYPOINT ["/opt/oai-spgwu/bin/entrypoint.sh"] diff --git a/images/oai-ue/Dockerfile.centos8 b/images/oai-ue/Dockerfile.centos8 new file mode 100644 index 0000000..d0b4bb4 --- /dev/null +++ b/images/oai-ue/Dockerfile.centos8 @@ -0,0 +1,61 @@ +ARG REGISTRY=localhost +FROM $REGISTRY/oai-build-base:latest.centos8 AS builder + +ARG GIT_TAG=v1.1.1 + +WORKDIR /root + +RUN if [ "$EURECOM_PROXY" == true ]; then git config --global http.proxy http://:@proxy.eurecom.fr:8080; fi +RUN git clone --depth=1 --branch=$GIT_TAG https://gitlab.eurecom.fr/oai/openairinterface5g.git +COPY patches patches/ +RUN patch -p1 -d openairinterface5g < patches/disable_building_nasmesh_and_rbtool.patch \ + && patch -p1 -d openairinterface5g < patches/el8_support_ue_ip_module.patch +RUN cd openairinterface5g/cmake_targets \ + && ln -sf /usr/local/bin/asn1c_oai /usr/local/bin/asn1c \ + && ln -sf /usr/local/share/asn1c_oai /usr/local/share/asn1c \ + && ./build_oai -c --UE -w USRP --verbose-compile + + +FROM centos:8 +LABEL name="oai-ue" \ + version="$GIT_TAG" \ + maintainer="Frank A. Zdarsky " \ + io.k8s.description="openairinterface5g UE $GIT_TAG." \ + io.openshift.tags="oai,ue" \ + io.openshift.non-scalable="true" + +RUN REPOLIST="PowerTools" \ + && PKGLIST="atlas blas boost lapack libconfig lksctp-tools protobuf-c iproute iputils procps-ng bind-utils" \ + # && yum -y upgrade-minimal --setopt=tsflags=nodocs --security --sec-severity=Critical --sec-severity=Important \ + && yum -y install --enablerepo ${REPOLIST} --setopt=tsflag=nodocs ${PKGLIST} \ + && yum install -y http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/x/xforms-1.2.4-5.el7.x86_64.rpm \ + && yum -y clean all \ + && rm -rf /var/cache/yum + +ENV APP_ROOT=/opt/oai-ue +ENV PATH=${APP_ROOT}:${PATH} HOME=${APP_ROOT} +COPY --from=builder /root/openairinterface5g/cmake_targets/lte_build_oai/build/lte-uesoftmodem ${APP_ROOT}/bin/ +COPY --from=builder /root/openairinterface5g/cmake_targets/lte_build_oai/build/*.so* /lib64 +COPY --from=builder /usr/local/lib64 /lib64 +COPY --from=builder /usr/local/bin/uhd_* /usr/local/bin +COPY --from=builder /usr/local/share/uhd /usr/local/share/uhd +RUN cd /lib64 \ + && ln -sf liboai_eth_transpro.so liboai_transpro.so \ + && ln -sf liboai_usrpdevif.so liboai_device.so \ + && ln -sf libuhd.so.3.13 libuhd.so.3 \ + && ln -sf libuhd.so.3 libuhd.so +COPY scripts ${APP_ROOT}/bin/ +COPY configs ${APP_ROOT}/etc/ +RUN chmod -R u+x ${APP_ROOT} && \ + chgrp -R 0 ${APP_ROOT} && \ + chmod -R g=u ${APP_ROOT} /etc/passwd +USER 10001 +WORKDIR ${APP_ROOT} + +# expose ports from ue.conf +EXPOSE 50000/udp 50001/udp + +CMD ["/opt/oai-ue/bin/lte-uesoftmodem", \ + "-C", "2680000000", "-r", "25", "--nokrnmod", "1", \ + "-O", "/opt/oai-ue/etc/ue.conf"] +ENTRYPOINT ["/opt/oai-ue/bin/entrypoint.sh"] diff --git a/images/rt-tests-cyclictest/Dockerfile.centos8 b/images/rt-tests-cyclictest/Dockerfile.centos8 new file mode 100644 index 0000000..aa13a35 --- /dev/null +++ b/images/rt-tests-cyclictest/Dockerfile.centos8 @@ -0,0 +1,20 @@ +FROM centos:8 + +RUN REPOLIST=PowerTools \ + PKGLIST="rt-tests" \ + && yum -y install --enablerepo ${REPOLIST} ${PKGLIST} \ + && yum -y clean all \ + && rm -rf /var/cache/yum + +ARG CORES=1 +ARG CORE_LIST=2 +ARG DURATION=1m + +ENV CORES="${CORES}" +ENV CORE_LIST="${CORE_LIST}" +ENV DURATION="${DURATION}" +USER root + +ENTRYPOINT ["/bin/bash"] +CMD ["-c", "taskset -c ${CORE_LIST} cyclictest -q -D ${DURATION} -p 99 -t ${CORES} -h 30 -m -a ${CORE_LIST}"] + From 80efb0831d3d76cb4cdd3add8e5c0c6932d6f40e Mon Sep 17 00:00:00 2001 From: Nikolay Nikolaev Date: Wed, 18 Dec 2019 08:37:38 +0000 Subject: [PATCH 2/9] Make build images work for "any" Linux, defaulting to "Centos 8" as a basic Docker image. Signed-off-by: Nikolay Nikolaev --- README.md | 4 ++++ hack/build_images | 15 +++++++++------ 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 411561a..6000066 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,10 @@ git clone http://github.com/OPENAIRINTERFACE/openair-k8s cd openair-k8s ``` +#### Ubuntu + +Follow this [guide](https://computingforgeeks.com/how-to-install-podman-on-ubuntu/) to install `podman`. + ### Building To build all OAI component images: ```sh diff --git a/hack/build_images b/hack/build_images index 302b7a6..b00416d 100755 --- a/hack/build_images +++ b/hack/build_images @@ -2,17 +2,20 @@ source /etc/os-release PLATFORM=${PLATFORM:-${ID#rh*}${VERSION_ID%.*}} -DOCKERFILE_SUFIX=rh${PLATFORM} + +if [[ ${PLATFORM} == "rh"* ]]; then + DOCKERFILE_SUFIX=rh${PLATFORM} +else + PLATFORM="centos8" + DOCKERFILE_SUFIX=${PLATFORM} +fi + KERNEL_VERSION=${KERNEL_VERSION:-$(uname -r)} KERNEL_VERSION=${KERNEL_VERSION%*.x86_64} REGISTRY=${REGISTRY:-registry.redhat.io} BUILD_ARGS=${BUILD_ARGS:-"--no-cache"} IMAGES=$(find images -type f -name Dockerfile* | sed 's|images/||g' | sed 's|/Dockerfile[a-z0-9.]*||g' | sort | uniq | xargs) -if [[ $PLATFORM == *"centos"* ]]; then - DOCKERFILE_SUFIX=${PLATFORM} -fi - info() { local MESSAGE=$1 @@ -86,7 +89,7 @@ if [ $# -ne 0 ]; then IMAGES=$* fi -if [[ $PLATFORM != *"centos"* ]]; then +if [[ ${PLATFORM} == "rh"* ]]; then podman login ${REGISTRY} fi From e0492097f9c6e57b23619aee08306e028765e91f Mon Sep 17 00:00:00 2001 From: Radoslav Dimitrov Date: Wed, 18 Dec 2019 16:19:19 +0200 Subject: [PATCH 3/9] Add Docker build support Signed-off-by: Radoslav Dimitrov --- hack/build_images | 38 +++++++++++++++++++++++++++++++++++--- 1 file changed, 35 insertions(+), 3 deletions(-) diff --git a/hack/build_images b/hack/build_images index b00416d..4c75456 100755 --- a/hack/build_images +++ b/hack/build_images @@ -34,11 +34,11 @@ available images: exit 1 } -build_image() { +build_image_podman() { local IMAGE=$1 local TAG=$2 local CLEAN_TAG=$(echo $TAG | sed -r 's/^v([0-9])/\1/') - + echo "Building images using - Podman" # Default to building from Dockerfile. If there's a platform-specific Dockerfile # use that instead and append the platform name to the image tag. DOCKERFILE="Dockerfile" @@ -64,6 +64,33 @@ build_image() { fi } +build_image_docker() { + local IMAGE=$1 + local TAG=$2 + local CLEAN_TAG=$(echo $TAG | sed -r 's/^v([0-9])/\1/') + + echo "Building images using - Docker" + # Default to building from Dockerfile. If there's a platform-specific Dockerfile + # use that instead and append the platform name to the image tag. + DOCKERFILE="Dockerfile" + if [ -f images/$IMAGE/Dockerfile.${DOCKERFILE_SUFIX} ]; then + DOCKERFILE="Dockerfile.${DOCKERFILE_SUFIX}" + CLEAN_TAG="${CLEAN_TAG}.${PLATFORM}" + fi + + info "Building image $IMAGE:$CLEAN_TAG" + + docker build \ + --network=host \ + $BUILD_ARGS \ + --build-arg GIT_TAG=$TAG \ + --build-arg KERNEL_VERSION=$KERNEL_VERSION \ + --build-arg EURECOM_PROXY=$PROXY \ + -f images/$IMAGE/$DOCKERFILE \ + -t $IMAGE:$CLEAN_TAG \ + images/$IMAGE +} + # parse command line args POSITIONAL=() while [[ $# -gt 0 ]]; do @@ -108,5 +135,10 @@ for i in $IMAGES; do TAG=$(grep -oP "ARG GIT_TAG=\K[a-zA-Z0-9.-]+" images/$IMG/Dockerfile || echo "latest") fi fi - build_image $IMG $TAG + # decide whether or not to use docker or podman + if [[ -z $USE_DOCKER ]]; then + build_image_podman $IMG $TAG + else + build_image_docker $IMG $TAG + fi done From 9fd3337c1447a8ea7131fc554144c90e58372d44 Mon Sep 17 00:00:00 2001 From: Nikolay Nikolaev Date: Thu, 19 Dec 2019 16:01:50 +0200 Subject: [PATCH 4/9] Make docker build work for more systems (#3) * Check for the presence of /etc/os-release This enables the build on non-systemd/non-linux *nixes, like OSX. Signed-off-by: Nikolay Nikolaev * Detect podman presence, otherwise use docker Signed-off-by: Nikolay Nikolaev * Adapt sed usage for non-GNU versions Signed-off-by: Nikolay Nikolaev * Cleanup all Centos8 Dockerfiles Remove unrelated labels and properties. Signed-off-by: Nikolay Nikolaev --- hack/build_images | 24 +++++++++++++++--------- images/oai-build-base/Dockerfile.centos8 | 10 ++++------ images/oai-enb/Dockerfile.centos8 | 8 ++------ images/oai-gnb/Dockerfile.centos8 | 8 ++------ images/oai-hss/Dockerfile.centos8 | 9 ++------- images/oai-mme/Dockerfile.centos8 | 8 ++------ images/oai-nrue/Dockerfile.centos8 | 8 ++------ images/oai-spgwc/Dockerfile.centos8 | 8 ++------ images/oai-spgwu/Dockerfile.centos8 | 8 ++------ images/oai-ue/Dockerfile.centos8 | 8 ++------ 10 files changed, 35 insertions(+), 64 deletions(-) diff --git a/hack/build_images b/hack/build_images index 4c75456..51faeb3 100755 --- a/hack/build_images +++ b/hack/build_images @@ -1,7 +1,9 @@ #!/bin/bash -source /etc/os-release -PLATFORM=${PLATFORM:-${ID#rh*}${VERSION_ID%.*}} +if [[ -f /etc/os-release ]]; then + source /etc/os-release + PLATFORM=${PLATFORM:-${ID#rh*}${VERSION_ID%.*}} +fi if [[ ${PLATFORM} == "rh"* ]]; then DOCKERFILE_SUFIX=rh${PLATFORM} @@ -10,6 +12,10 @@ else DOCKERFILE_SUFIX=${PLATFORM} fi +if hash podman 2>/dev/null; then + USE_PODMAN=true +fi + KERNEL_VERSION=${KERNEL_VERSION:-$(uname -r)} KERNEL_VERSION=${KERNEL_VERSION%*.x86_64} REGISTRY=${REGISTRY:-registry.redhat.io} @@ -37,7 +43,7 @@ available images: build_image_podman() { local IMAGE=$1 local TAG=$2 - local CLEAN_TAG=$(echo $TAG | sed -r 's/^v([0-9])/\1/') + local CLEAN_TAG=$(echo $TAG | sed 's/^v\([0-9]\)/\1/') echo "Building images using - Podman" # Default to building from Dockerfile. If there's a platform-specific Dockerfile # use that instead and append the platform name to the image tag. @@ -67,7 +73,7 @@ build_image_podman() { build_image_docker() { local IMAGE=$1 local TAG=$2 - local CLEAN_TAG=$(echo $TAG | sed -r 's/^v([0-9])/\1/') + local CLEAN_TAG=$(echo $TAG | sed 's/^v\([0-9]\)/\1/') echo "Building images using - Docker" # Default to building from Dockerfile. If there's a platform-specific Dockerfile @@ -130,15 +136,15 @@ for i in $IMAGES; do # if no git_tag specified, grep default from Dockerfile if [ "$IMG" = "$TAG" ]; then if [ -f images/$IMG/Dockerfile.${DOCKERFILE_SUFIX} ]; then - TAG=$(grep -oP "ARG GIT_TAG=\K[a-zA-Z0-9.-]+" images/$IMG/Dockerfile.${DOCKERFILE_SUFIX} || echo "latest") + TAG=$(sed -n "s/ARG GIT_TAG=\(.*\)/\1/p" images/$IMG/Dockerfile.${DOCKERFILE_SUFIX} || echo "latest") else - TAG=$(grep -oP "ARG GIT_TAG=\K[a-zA-Z0-9.-]+" images/$IMG/Dockerfile || echo "latest") + TAG=$(sed -n "s/ARG GIT_TAG=\(.*\)/\1/p" images/$IMG/Dockerfile || echo "latest") fi fi # decide whether or not to use docker or podman - if [[ -z $USE_DOCKER ]]; then - build_image_podman $IMG $TAG - else + if [[ -z $USE_PODMAN ]]; then build_image_docker $IMG $TAG + else + build_image_podman $IMG $TAG fi done diff --git a/images/oai-build-base/Dockerfile.centos8 b/images/oai-build-base/Dockerfile.centos8 index 0f62323..c182364 100644 --- a/images/oai-build-base/Dockerfile.centos8 +++ b/images/oai-build-base/Dockerfile.centos8 @@ -2,7 +2,7 @@ FROM centos:8 ARG GIT_TAG=latest LABEL name="oai-build-base" \ - version="${GIT_TAG}.el8" \ + version="${GIT_TAG}.centos8" \ io.k8s.description="Image containing all build dependencies for openairinterface5g and openair-cn." WORKDIR /root @@ -16,7 +16,9 @@ RUN yum -y install --enablerepo="PowerTools" \ bzip2-devel \ check \ check-devel \ + diffutils \ elfutils-libelf-devel \ + file \ gflags-devel \ glog-devel \ gmp-devel \ @@ -67,11 +69,7 @@ RUN yum -y install --enablerepo="PowerTools" \ && rm -rf /var/cache/yum \ && pip2 install --user mako pexpect -# RUN git clone https://gist.github.com/2190472.git /opt/ssh - -RUN if [ "$EURECOM_PROXY" == true ]; then git config --global http.proxy http://:@proxy.eurecom.fr:8080; fi - -# build packages not present in RHEL/EPEL repos +# build packages not present in CentOS/EPEL repos COPY patches patches/ COPY scripts scripts/ RUN scripts/build_missing_packages diff --git a/images/oai-enb/Dockerfile.centos8 b/images/oai-enb/Dockerfile.centos8 index 0014131..b59587f 100644 --- a/images/oai-enb/Dockerfile.centos8 +++ b/images/oai-enb/Dockerfile.centos8 @@ -1,5 +1,4 @@ -ARG REGISTRY=localhost -FROM $REGISTRY/oai-build-base:latest.centos8 AS builder +FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=v1.1.1 @@ -20,10 +19,7 @@ RUN cd openairinterface5g/cmake_targets \ FROM centos:8 LABEL name="oai-enb" \ version="$GIT_TAG" \ - maintainer="Frank A. Zdarsky " \ - io.k8s.description="openairinterface5g eNB $GIT_TAG." \ - io.openshift.tags="oai,enb" \ - io.openshift.non-scalable="true" + io.k8s.description="openairinterface5g eNB $GIT_TAG." RUN REPOLIST="PowerTools" \ PKGLIST="boost libconfig lksctp-tools protobuf-c iproute iputils procps-ng bind-utils" \ diff --git a/images/oai-gnb/Dockerfile.centos8 b/images/oai-gnb/Dockerfile.centos8 index 4a9ad2a..af0942a 100644 --- a/images/oai-gnb/Dockerfile.centos8 +++ b/images/oai-gnb/Dockerfile.centos8 @@ -1,5 +1,4 @@ -ARG REGISTRY=localhost -FROM $REGISTRY/oai-build-base:latest.centos8 AS builder +FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=develop-nr @@ -19,10 +18,7 @@ RUN cd openairinterface5g/cmake_targets \ FROM centos:8 LABEL name="oai-gnb" \ version="$GIT_TAG" \ - maintainer="Frank A. Zdarsky " \ - io.k8s.description="openairinterface5g gNB $GIT_TAG." \ - io.openshift.tags="oai,gnb" \ - io.openshift.non-scalable="true" + io.k8s.description="openairinterface5g gNB $GIT_TAG." RUN REPOLIST="PowerTools" \ && PKGLIST="atlas blas boost lapack libconfig libusb libusbx lksctp-tools protobuf-c iproute iputils procps-ng bind-utils" \ diff --git a/images/oai-hss/Dockerfile.centos8 b/images/oai-hss/Dockerfile.centos8 index 9a3e523..14a53fc 100644 --- a/images/oai-hss/Dockerfile.centos8 +++ b/images/oai-hss/Dockerfile.centos8 @@ -1,5 +1,4 @@ -ARG REGISTRY=localhost -FROM $REGISTRY/oai-build-base:latest.centos8 AS builder +FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=develop-vco3 @@ -21,11 +20,7 @@ RUN cd openair-cn/scripts \ FROM centos:8 LABEL name="oai-hss" \ version="$GIT_TAG" \ - maintainer="Frank A. Zdarsky " \ - io.k8s.description="openair-cn HSS $GIT_TAG." \ - io.openshift.tags="oai,hss" \ - io.openshift.non-scalable="true" \ - io.openshift.wants="mariadb" + io.k8s.description="openair-cn HSS $GIT_TAG." RUN REPOLIST=PowerTools \ PKGLIST="libconfig libidn mariadb-devel lksctp-tools mysql iproute iputils procps-ng bind-utils" && \ diff --git a/images/oai-mme/Dockerfile.centos8 b/images/oai-mme/Dockerfile.centos8 index 29b351b..58992c7 100644 --- a/images/oai-mme/Dockerfile.centos8 +++ b/images/oai-mme/Dockerfile.centos8 @@ -1,5 +1,4 @@ -ARG REGISTRY=localhost -FROM $REGISTRY/oai-build-base:latest.centos8 AS builder +FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=develop-vco3 @@ -20,10 +19,7 @@ RUN cd openair-cn/scripts \ FROM centos:8 LABEL name="oai-mme" \ version="$GIT_TAG" \ - maintainer="Frank A. Zdarsky " \ - io.k8s.description="openair-cn MME $GIT_TAG." \ - io.openshift.tags="oai,mme" \ - io.openshift.non-scalable="true" + io.k8s.description="openair-cn MME $GIT_TAG." RUN REPOLIST=PowerTools \ PKGLIST="libconfig libasan libidn lksctp-tools iproute iputils procps-ng bind-utils" && \ diff --git a/images/oai-nrue/Dockerfile.centos8 b/images/oai-nrue/Dockerfile.centos8 index 668f33e..1f9de96 100644 --- a/images/oai-nrue/Dockerfile.centos8 +++ b/images/oai-nrue/Dockerfile.centos8 @@ -1,5 +1,4 @@ -ARG REGISTRY=localhost -FROM $REGISTRY/oai-build-base:latest.centos8 AS builder +FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=develop-nr @@ -19,10 +18,7 @@ RUN cd openairinterface5g/cmake_targets \ FROM centos:8 LABEL name="oai-nrue" \ version="$GIT_TAG" \ - maintainer="Frank A. Zdarsky " \ - io.k8s.description="openairinterface5g nrUE $GIT_TAG." \ - io.openshift.tags="oai,ue" \ - io.openshift.non-scalable="true" + io.k8s.description="openairinterface5g nrUE $GIT_TAG." RUN REPOLIST="PowerTools" \ && PKGLIST="atlas blas boost lapack libconfig libusb libusbx lksctp-tools protobuf-c iproute iputils procps-ng bind-utils" \ diff --git a/images/oai-spgwc/Dockerfile.centos8 b/images/oai-spgwc/Dockerfile.centos8 index 6e92789..bd80a5b 100644 --- a/images/oai-spgwc/Dockerfile.centos8 +++ b/images/oai-spgwc/Dockerfile.centos8 @@ -1,5 +1,4 @@ -ARG REGISTRY=localhost -FROM $REGISTRY/oai-build-base:latest.centos8 AS builder +FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=develop-vco3 @@ -16,10 +15,7 @@ RUN cd openair-cn-cups/build/scripts \ FROM centos:8 LABEL name="oai-spgwc" \ version="$GIT_TAG" \ - maintainer="Frank A. Zdarsky " \ - io.k8s.description="openair-cn-cups S/P-GW-C $GIT_TAG" \ - io.openshift.tags="oai,spgwc" \ - io.openshift.non-scalable="true" + io.k8s.description="openair-cn-cups S/P-GW-C $GIT_TAG" RUN REPOLIST=PowerTools \ PKGLIST="boost libasan libconfig libevent gflags-devel glog-devel iproute iputils procps-ng bind-utils" && \ diff --git a/images/oai-spgwu/Dockerfile.centos8 b/images/oai-spgwu/Dockerfile.centos8 index 0ef247f..ca68638 100644 --- a/images/oai-spgwu/Dockerfile.centos8 +++ b/images/oai-spgwu/Dockerfile.centos8 @@ -1,5 +1,4 @@ -ARG REGISTRY=localhost -FROM $REGISTRY/oai-build-base:latest.centos8 AS builder +FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=develop-vco3 @@ -15,10 +14,7 @@ RUN cd openair-cn-cups/build/scripts \ FROM centos:8 LABEL name="oai-spgwu" \ version="$GIT_TAG" \ - maintainer="Frank A. Zdarsky " \ - io.k8s.description="openair-cn-cups S/P-GW-U $GIT_TAG" \ - io.openshift.tags="oai,spgwu" \ - io.openshift.non-scalable="true" + io.k8s.description="openair-cn-cups S/P-GW-U $GIT_TAG" RUN REPOLIST=PowerTools \ PKGLIST="boost libasan libconfig libevent gflags-devel glog-devel iproute iputils iptables procps-ng bind-utils" && \ diff --git a/images/oai-ue/Dockerfile.centos8 b/images/oai-ue/Dockerfile.centos8 index d0b4bb4..3160d59 100644 --- a/images/oai-ue/Dockerfile.centos8 +++ b/images/oai-ue/Dockerfile.centos8 @@ -1,5 +1,4 @@ -ARG REGISTRY=localhost -FROM $REGISTRY/oai-build-base:latest.centos8 AS builder +FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=v1.1.1 @@ -19,10 +18,7 @@ RUN cd openairinterface5g/cmake_targets \ FROM centos:8 LABEL name="oai-ue" \ version="$GIT_TAG" \ - maintainer="Frank A. Zdarsky " \ - io.k8s.description="openairinterface5g UE $GIT_TAG." \ - io.openshift.tags="oai,ue" \ - io.openshift.non-scalable="true" + io.k8s.description="openairinterface5g UE $GIT_TAG." RUN REPOLIST="PowerTools" \ && PKGLIST="atlas blas boost lapack libconfig lksctp-tools protobuf-c iproute iputils procps-ng bind-utils" \ From 4701d1ed06f88784e60630930981905a0421b2fb Mon Sep 17 00:00:00 2001 From: Radoslav Dimitrov Date: Fri, 20 Dec 2019 13:18:16 +0200 Subject: [PATCH 5/9] Fix tagging for some of the images when used with Docker The COPY command had a syntax error in some of the dockerfiles Signed-off-by: Radoslav Dimitrov --- images/oai-enb/Dockerfile.centos8 | 8 ++++---- images/oai-gnb/Dockerfile.centos8 | 8 ++++---- images/oai-hss/Dockerfile.centos8 | 8 ++++---- images/oai-mme/Dockerfile.centos8 | 4 ++-- images/oai-nrue/Dockerfile.centos8 | 8 ++++---- images/oai-ue/Dockerfile.centos8 | 8 ++++---- 6 files changed, 22 insertions(+), 22 deletions(-) diff --git a/images/oai-enb/Dockerfile.centos8 b/images/oai-enb/Dockerfile.centos8 index b59587f..8d344f3 100644 --- a/images/oai-enb/Dockerfile.centos8 +++ b/images/oai-enb/Dockerfile.centos8 @@ -32,10 +32,10 @@ RUN REPOLIST="PowerTools" \ ENV APP_ROOT=/opt/oai-enb ENV PATH=${APP_ROOT}:${PATH} HOME=${APP_ROOT} COPY --from=builder /root/openairinterface5g/cmake_targets/lte_build_oai/build/lte-softmodem ${APP_ROOT}/bin/ -COPY --from=builder /root/openairinterface5g/cmake_targets/lte_build_oai/build/*.so* /lib64 -COPY --from=builder /usr/local/lib64 /lib64 -COPY --from=builder /usr/local/bin/uhd_* /usr/local/bin -COPY --from=builder /usr/local/share/uhd /usr/local/share/uhd +COPY --from=builder /root/openairinterface5g/cmake_targets/lte_build_oai/build/*.so* /lib64/ +COPY --from=builder /usr/local/lib64 /lib64/ +COPY --from=builder /usr/local/bin/uhd_* /usr/local/bin/ +COPY --from=builder /usr/local/share/uhd /usr/local/share/uhd/ RUN cd /lib64 \ && ln -sf liboai_eth_transpro.so liboai_transpro.so \ && ln -sf liboai_usrpdevif.so liboai_device.so \ diff --git a/images/oai-gnb/Dockerfile.centos8 b/images/oai-gnb/Dockerfile.centos8 index af0942a..fe2efcd 100644 --- a/images/oai-gnb/Dockerfile.centos8 +++ b/images/oai-gnb/Dockerfile.centos8 @@ -31,10 +31,10 @@ RUN REPOLIST="PowerTools" \ ENV APP_ROOT=/opt/oai-gnb ENV PATH=${APP_ROOT}:${PATH} HOME=${APP_ROOT} COPY --from=builder /root/openairinterface5g/cmake_targets/ran_build/build/nr-softmodem ${APP_ROOT}/bin/ -COPY --from=builder /root/openairinterface5g/cmake_targets/ran_build/build/*.so* /lib64 -COPY --from=builder /usr/local/lib64 /lib64 -COPY --from=builder /usr/local/bin/uhd_* /usr/local/bin -COPY --from=builder /usr/local/share/uhd /usr/local/share/uhd +COPY --from=builder /root/openairinterface5g/cmake_targets/ran_build/build/*.so* /lib64/ +COPY --from=builder /usr/local/lib64 /lib64/ +COPY --from=builder /usr/local/bin/uhd_* /usr/local/bin/ +COPY --from=builder /usr/local/share/uhd /usr/local/share/uhd/ RUN cd /lib64 \ && ln -sf liboai_eth_transpro.so liboai_transpro.so \ && ln -sf liboai_usrpdevif.so liboai_device.so \ diff --git a/images/oai-hss/Dockerfile.centos8 b/images/oai-hss/Dockerfile.centos8 index 14a53fc..c93b0c8 100644 --- a/images/oai-hss/Dockerfile.centos8 +++ b/images/oai-hss/Dockerfile.centos8 @@ -31,11 +31,11 @@ RUN REPOLIST=PowerTools \ ENV APP_ROOT=/opt/oai-hss ENV PATH=${APP_ROOT}:${PATH} HOME=${APP_ROOT} -COPY --from=builder /root/openair-cn/build/hss_rel14/bin/hss ${APP_ROOT}/bin/oai_hss -COPY --from=builder /usr/local/lib/libfd* /lib64 +COPY --from=builder /root/openair-cn/build/hss_rel14/bin/hss ${APP_ROOT}/bin/oai_hss/ +COPY --from=builder /usr/local/lib/libfd* /lib64/ COPY --from=builder /usr/local/lib/freeDiameter/* /usr/local/lib/freeDiameter/ -COPY --from=builder /usr/local/lib64/libcassandra* /lib64 -COPY --from=builder /usr/local/lib64/libuv.so /lib64 +COPY --from=builder /usr/local/lib64/libcassandra* /lib64/ +COPY --from=builder /usr/local/lib64/libuv.so /lib64/ COPY scripts ${APP_ROOT}/bin/ COPY configs ${APP_ROOT}/etc/ RUN chmod -R u+x ${APP_ROOT} && \ diff --git a/images/oai-mme/Dockerfile.centos8 b/images/oai-mme/Dockerfile.centos8 index 58992c7..0ad402a 100644 --- a/images/oai-mme/Dockerfile.centos8 +++ b/images/oai-mme/Dockerfile.centos8 @@ -30,9 +30,9 @@ RUN REPOLIST=PowerTools \ ENV APP_ROOT=/opt/oai-mme ENV PATH=${APP_ROOT}:${PATH} HOME=${APP_ROOT} COPY --from=builder /root/openair-cn/build/mme/build/mme ${APP_ROOT}/bin/ -COPY --from=builder /usr/local/lib/libfd* /lib64 +COPY --from=builder /usr/local/lib/libfd* /lib64/ COPY --from=builder /usr/local/lib/freeDiameter/* /usr/local/lib/freeDiameter/ -COPY --from=builder /usr/local/lib/liblfds* /usr/lib64 +COPY --from=builder /usr/local/lib/liblfds* /usr/lib64/ COPY scripts ${APP_ROOT}/bin/ COPY configs ${APP_ROOT}/etc/ RUN chmod -R u+x ${APP_ROOT} && \ diff --git a/images/oai-nrue/Dockerfile.centos8 b/images/oai-nrue/Dockerfile.centos8 index 1f9de96..7965db7 100644 --- a/images/oai-nrue/Dockerfile.centos8 +++ b/images/oai-nrue/Dockerfile.centos8 @@ -31,10 +31,10 @@ RUN REPOLIST="PowerTools" \ ENV APP_ROOT=/opt/oai-nrue ENV PATH=${APP_ROOT}:${PATH} HOME=${APP_ROOT} COPY --from=builder /root/openairinterface5g/cmake_targets/ran_build/build/nr-uesoftmodem ${APP_ROOT}/bin/ -COPY --from=builder /root/openairinterface5g/cmake_targets/ran_build/build/*.so* /lib64 -COPY --from=builder /usr/local/lib64 /lib64 -COPY --from=builder /usr/local/bin/uhd_* /usr/local/bin -COPY --from=builder /usr/local/share/uhd /usr/local/share/uhd +COPY --from=builder /root/openairinterface5g/cmake_targets/ran_build/build/*.so* /lib64/ +COPY --from=builder /usr/local/lib64 /lib64/ +COPY --from=builder /usr/local/bin/uhd_* /usr/local/bin/ +COPY --from=builder /usr/local/share/uhd /usr/local/share/uhd/ RUN cd /lib64 \ && ln -sf liboai_eth_transpro.so liboai_transpro.so \ && ln -sf liboai_usrpdevif.so liboai_device.so \ diff --git a/images/oai-ue/Dockerfile.centos8 b/images/oai-ue/Dockerfile.centos8 index 3160d59..fddd3d0 100644 --- a/images/oai-ue/Dockerfile.centos8 +++ b/images/oai-ue/Dockerfile.centos8 @@ -31,10 +31,10 @@ RUN REPOLIST="PowerTools" \ ENV APP_ROOT=/opt/oai-ue ENV PATH=${APP_ROOT}:${PATH} HOME=${APP_ROOT} COPY --from=builder /root/openairinterface5g/cmake_targets/lte_build_oai/build/lte-uesoftmodem ${APP_ROOT}/bin/ -COPY --from=builder /root/openairinterface5g/cmake_targets/lte_build_oai/build/*.so* /lib64 -COPY --from=builder /usr/local/lib64 /lib64 -COPY --from=builder /usr/local/bin/uhd_* /usr/local/bin -COPY --from=builder /usr/local/share/uhd /usr/local/share/uhd +COPY --from=builder /root/openairinterface5g/cmake_targets/lte_build_oai/build/*.so* /lib64/ +COPY --from=builder /usr/local/lib64 /lib64/ +COPY --from=builder /usr/local/bin/uhd_* /usr/local/bin/ +COPY --from=builder /usr/local/share/uhd /usr/local/share/uhd/ RUN cd /lib64 \ && ln -sf liboai_eth_transpro.so liboai_transpro.so \ && ln -sf liboai_usrpdevif.so liboai_device.so \ From 1b208a3282534e0b9e5b613e0ef24ba03a89fd57 Mon Sep 17 00:00:00 2001 From: Radoslav Dimitrov Date: Fri, 20 Dec 2019 13:28:16 +0200 Subject: [PATCH 6/9] Fix port exposing in Dockerfiles Signed-off-by: Radoslav Dimitrov --- images/oai-enb/Dockerfile.centos8 | 18 ++++++++++++------ images/oai-gnb/Dockerfile.centos8 | 18 ++++++++++++------ images/oai-nrue/Dockerfile.centos8 | 18 ++++++++++++------ 3 files changed, 36 insertions(+), 18 deletions(-) diff --git a/images/oai-enb/Dockerfile.centos8 b/images/oai-enb/Dockerfile.centos8 index 8d344f3..b454295 100644 --- a/images/oai-enb/Dockerfile.centos8 +++ b/images/oai-enb/Dockerfile.centos8 @@ -49,12 +49,18 @@ RUN chmod -R u+x ${APP_ROOT} && \ USER 10001 WORKDIR ${APP_ROOT} -EXPOSE 2152/udp # S1U, GTP/UDP -EXPOSE 22100/tcp # ? -EXPOSE 36412/udp # S1C, SCTP/UDP -EXPOSE 36422/udp # X2C, SCTP/UDP -EXPOSE 50000/udp # IF5 / ORI (control) -EXPOSE 50001/udp # IF5 / ECPRI (data) +# S1U, GTP/UDP +EXPOSE 2152/udp +# ? +EXPOSE 22100/tcp +# S1C, SCTP/UDP +EXPOSE 36412/udp +# X2C, SCTP/UDP +EXPOSE 36422/udp +# IF5 / ORI (control) +EXPOSE 50000/udp +# IF5 / ECPRI (data) +EXPOSE 50001/udp CMD ["/opt/oai-enb/bin/lte-softmodem", "-O", "/opt/oai-enb/etc/enb.conf"] ENTRYPOINT ["/opt/oai-enb/bin/entrypoint.sh"] diff --git a/images/oai-gnb/Dockerfile.centos8 b/images/oai-gnb/Dockerfile.centos8 index fe2efcd..5ac5c52 100644 --- a/images/oai-gnb/Dockerfile.centos8 +++ b/images/oai-gnb/Dockerfile.centos8 @@ -48,12 +48,18 @@ RUN chmod -R u+x ${APP_ROOT} && \ USER 10001 WORKDIR ${APP_ROOT} -EXPOSE 2152/udp # S1U, GTP/UDP -EXPOSE 22100/tcp # ? -EXPOSE 36412/udp # S1C, SCTP/UDP -EXPOSE 36422/udp # X2C, SCTP/UDP -EXPOSE 50000/udp # IF5 / ORI (control) -EXPOSE 50001/udp # IF5 / ECPRI (data) +# S1U, GTP/UDP +EXPOSE 2152/udp +# ? +EXPOSE 22100/tcp +# S1C, SCTP/UDP +EXPOSE 36412/udp +# X2C, SCTP/UDP +EXPOSE 36422/udp +# IF5 / ORI (control) +EXPOSE 50000/udp +# IF5 / ECPRI (data) +EXPOSE 50001/udp CMD ["/opt/oai-gnb/bin/nr-softmodem", "-O", "/opt/oai-gnb/etc/gnb.conf"] ENTRYPOINT ["/opt/oai-gnb/bin/entrypoint.sh"] diff --git a/images/oai-nrue/Dockerfile.centos8 b/images/oai-nrue/Dockerfile.centos8 index 7965db7..28a0bfa 100644 --- a/images/oai-nrue/Dockerfile.centos8 +++ b/images/oai-nrue/Dockerfile.centos8 @@ -47,12 +47,18 @@ RUN chmod -R u+x ${APP_ROOT} && \ USER 10001 WORKDIR ${APP_ROOT} -EXPOSE 2152/udp # S1U, GTP/UDP -EXPOSE 22100/tcp # ? -EXPOSE 36412/udp # S1C, SCTP/UDP -EXPOSE 36422/udp # X2C, SCTP/UDP -EXPOSE 50000/udp # IF5 / ORI (control) -EXPOSE 50001/udp # IF5 / ECPRI (data) +# S1U, GTP/UDP +EXPOSE 2152/udp +# ? +EXPOSE 22100/tcp +# S1C, SCTP/UDP +EXPOSE 36412/udp +# X2C, SCTP/UDP +EXPOSE 36422/udp +# IF5 / ORI (control) +EXPOSE 50000/udp +# IF5 / ECPRI (data) +EXPOSE 50001/udp CMD ["/opt/oai-gnb/bin/nr-uesoftmodem", "--numerology", "1", "-r", "106", "--phy-test", "-C", "3510000000"] ENTRYPOINT ["/opt/oai-gnb/bin/entrypoint.sh"] From de663b8fac496b78f9c3a3feb8bb407c84f72a8e Mon Sep 17 00:00:00 2001 From: Radoslav Dimitrov Date: Fri, 20 Dec 2019 13:37:48 +0200 Subject: [PATCH 7/9] Set a default TAG for rt-tests-cyclictest CentOS build Signed-off-by: Radoslav Dimitrov --- images/rt-tests-cyclictest/Dockerfile.centos8 | 2 ++ 1 file changed, 2 insertions(+) diff --git a/images/rt-tests-cyclictest/Dockerfile.centos8 b/images/rt-tests-cyclictest/Dockerfile.centos8 index aa13a35..9f8e189 100644 --- a/images/rt-tests-cyclictest/Dockerfile.centos8 +++ b/images/rt-tests-cyclictest/Dockerfile.centos8 @@ -1,5 +1,7 @@ FROM centos:8 +ARG GIT_TAG=latest + RUN REPOLIST=PowerTools \ PKGLIST="rt-tests" \ && yum -y install --enablerepo ${REPOLIST} ${PKGLIST} \ From fd487a4514b862de6757dd1b596656691bf3fec7 Mon Sep 17 00:00:00 2001 From: Radoslav Dimitrov Date: Fri, 20 Dec 2019 14:32:54 +0200 Subject: [PATCH 8/9] Support rt-test-cyclictest for CentOS 8 Signed-off-by: Radoslav Dimitrov --- images/oai-build-base/Dockerfile.centos8 | 1 + images/rt-tests-cyclictest/Dockerfile.centos8 | 13 +++++++------ 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/images/oai-build-base/Dockerfile.centos8 b/images/oai-build-base/Dockerfile.centos8 index c182364..05c74fb 100644 --- a/images/oai-build-base/Dockerfile.centos8 +++ b/images/oai-build-base/Dockerfile.centos8 @@ -47,6 +47,7 @@ RUN yum -y install --enablerepo="PowerTools" \ lz4-devel \ mariadb-devel \ nettle-devel \ + numactl-devel \ openssh-clients \ openssh-server \ openssl \ diff --git a/images/rt-tests-cyclictest/Dockerfile.centos8 b/images/rt-tests-cyclictest/Dockerfile.centos8 index 9f8e189..6c9fd42 100644 --- a/images/rt-tests-cyclictest/Dockerfile.centos8 +++ b/images/rt-tests-cyclictest/Dockerfile.centos8 @@ -1,12 +1,13 @@ -FROM centos:8 +FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=latest -RUN REPOLIST=PowerTools \ - PKGLIST="rt-tests" \ - && yum -y install --enablerepo ${REPOLIST} ${PKGLIST} \ - && yum -y clean all \ - && rm -rf /var/cache/yum +RUN git clone --depth=1 --branch=stable/v1.0 git://git.kernel.org/pub/scm/utils/rt-tests/rt-tests.git +RUN cd rt-tests && make cyclictest + +FROM centos:8 + +COPY --from=builder /root/rt-tests/cyclictest /usr/local/bin/cyclictest/ ARG CORES=1 ARG CORE_LIST=2 From d77813f38b3f76106317b218cd7bc760200977d6 Mon Sep 17 00:00:00 2001 From: Radoslav Dimitrov Date: Tue, 7 Jan 2020 15:26:23 +0200 Subject: [PATCH 9/9] Add licence information Signed-off-by: Radoslav Dimitrov --- images/oai-build-base/Dockerfile.centos8 | 15 +++++++++++++++ images/oai-enb/Dockerfile.centos8 | 15 +++++++++++++++ images/oai-gnb/Dockerfile.centos8 | 15 +++++++++++++++ images/oai-hss/Dockerfile.centos8 | 15 +++++++++++++++ images/oai-mme/Dockerfile.centos8 | 15 +++++++++++++++ images/oai-nrue/Dockerfile.centos8 | 15 +++++++++++++++ images/oai-spgwc/Dockerfile.centos8 | 15 +++++++++++++++ images/oai-spgwu/Dockerfile.centos8 | 15 +++++++++++++++ images/oai-ue/Dockerfile.centos8 | 15 +++++++++++++++ images/rt-tests-cyclictest/Dockerfile.centos8 | 15 +++++++++++++++ 10 files changed, 150 insertions(+) diff --git a/images/oai-build-base/Dockerfile.centos8 b/images/oai-build-base/Dockerfile.centos8 index 05c74fb..5601b88 100644 --- a/images/oai-build-base/Dockerfile.centos8 +++ b/images/oai-build-base/Dockerfile.centos8 @@ -1,3 +1,18 @@ +# Copyright 2020 VMware, Inc. +# SPDX-License-Identifier: Apache-2.0 +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + FROM centos:8 ARG GIT_TAG=latest diff --git a/images/oai-enb/Dockerfile.centos8 b/images/oai-enb/Dockerfile.centos8 index b454295..9fe0e55 100644 --- a/images/oai-enb/Dockerfile.centos8 +++ b/images/oai-enb/Dockerfile.centos8 @@ -1,3 +1,18 @@ +# Copyright 2020 VMware, Inc. +# SPDX-License-Identifier: Apache-2.0 +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=v1.1.1 diff --git a/images/oai-gnb/Dockerfile.centos8 b/images/oai-gnb/Dockerfile.centos8 index 5ac5c52..26c8a1f 100644 --- a/images/oai-gnb/Dockerfile.centos8 +++ b/images/oai-gnb/Dockerfile.centos8 @@ -1,3 +1,18 @@ +# Copyright 2020 VMware, Inc. +# SPDX-License-Identifier: Apache-2.0 +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=develop-nr diff --git a/images/oai-hss/Dockerfile.centos8 b/images/oai-hss/Dockerfile.centos8 index c93b0c8..2e37b69 100644 --- a/images/oai-hss/Dockerfile.centos8 +++ b/images/oai-hss/Dockerfile.centos8 @@ -1,3 +1,18 @@ +# Copyright 2020 VMware, Inc. +# SPDX-License-Identifier: Apache-2.0 +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=develop-vco3 diff --git a/images/oai-mme/Dockerfile.centos8 b/images/oai-mme/Dockerfile.centos8 index 0ad402a..b52d6b5 100644 --- a/images/oai-mme/Dockerfile.centos8 +++ b/images/oai-mme/Dockerfile.centos8 @@ -1,3 +1,18 @@ +# Copyright 2020 VMware, Inc. +# SPDX-License-Identifier: Apache-2.0 +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=develop-vco3 diff --git a/images/oai-nrue/Dockerfile.centos8 b/images/oai-nrue/Dockerfile.centos8 index 28a0bfa..dd62e06 100644 --- a/images/oai-nrue/Dockerfile.centos8 +++ b/images/oai-nrue/Dockerfile.centos8 @@ -1,3 +1,18 @@ +# Copyright 2020 VMware, Inc. +# SPDX-License-Identifier: Apache-2.0 +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=develop-nr diff --git a/images/oai-spgwc/Dockerfile.centos8 b/images/oai-spgwc/Dockerfile.centos8 index bd80a5b..3f2f343 100644 --- a/images/oai-spgwc/Dockerfile.centos8 +++ b/images/oai-spgwc/Dockerfile.centos8 @@ -1,3 +1,18 @@ +# Copyright 2020 VMware, Inc. +# SPDX-License-Identifier: Apache-2.0 +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=develop-vco3 diff --git a/images/oai-spgwu/Dockerfile.centos8 b/images/oai-spgwu/Dockerfile.centos8 index ca68638..fe288ec 100644 --- a/images/oai-spgwu/Dockerfile.centos8 +++ b/images/oai-spgwu/Dockerfile.centos8 @@ -1,3 +1,18 @@ +# Copyright 2020 VMware, Inc. +# SPDX-License-Identifier: Apache-2.0 +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=develop-vco3 diff --git a/images/oai-ue/Dockerfile.centos8 b/images/oai-ue/Dockerfile.centos8 index fddd3d0..b25b475 100644 --- a/images/oai-ue/Dockerfile.centos8 +++ b/images/oai-ue/Dockerfile.centos8 @@ -1,3 +1,18 @@ +# Copyright 2020 VMware, Inc. +# SPDX-License-Identifier: Apache-2.0 +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=v1.1.1 diff --git a/images/rt-tests-cyclictest/Dockerfile.centos8 b/images/rt-tests-cyclictest/Dockerfile.centos8 index 6c9fd42..db271a9 100644 --- a/images/rt-tests-cyclictest/Dockerfile.centos8 +++ b/images/rt-tests-cyclictest/Dockerfile.centos8 @@ -1,3 +1,18 @@ +# Copyright 2020 VMware, Inc. +# SPDX-License-Identifier: Apache-2.0 +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + FROM oai-build-base:latest.centos8 AS builder ARG GIT_TAG=latest