DOCKER_REPO=o-ran-sc/
NTS_MANAGER_PORT=8300
-NTS_BUILD_VERSION=1.3.7
+NTS_BUILD_VERSION=1.4.5
IPv6_ENABLED=false
SSH_CONNECTIONS=1
FROM o-ran-sc/nts-ng-base:latest
LABEL maintainer="alexandru.stancu@highstreet-technologies.com / adrian.lita@highstreet-technologies.com"
+RUN apt-get update && apt-get install -y --no-install-recommends \
+ # Opendaylight download
+ wget \
+ # Java 11
+ default-jdk \
+ python3 \
+ && rm -rf /var/lib/apt/lists/* && \
+ mkdir /opt/opendaylight
+
+WORKDIR /opt
+
+ARG ODL_VERSION=15.1.0
+
+RUN wget --no-check-certificate https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/opendaylight/$ODL_VERSION/opendaylight-$ODL_VERSION.tar.gz
+
+RUN tar -xvzf opendaylight-${ODL_VERSION}.tar.gz -C opendaylight --strip-components 1 && \
+ rm -rf opendaylight-${ODL_VERSION}.tar.gz
+
# ntsim-ng configuration and deployment
COPY ./yang /opt/dev/deploy/yang
COPY ./data /opt/dev/deploy/data
COPY ./config.json /opt/dev/ntsim-ng/config/config.json
+COPY ./org.apache.karaf.features.cfg /opt/opendaylight/etc/org.apache.karaf.features.cfg
# ntsim-ng init docker
RUN /opt/dev/ntsim-ng/ntsim-ng --container-init -w /opt/dev/ntsim-ng
-# finishing container build
-ARG BUILD_DATE
-LABEL build-date=$BUILD_DATE
+COPY ./callhomeConfig.py /opt/dev/workspace/callhomeConfig.py
# add exposed ports
-EXPOSE 830-929
-EXPOSE 21-22
+EXPOSE 8181
ENV NTS_FUNCTION_TYPE=NTS_FUNCTION_TYPE_TOPOLOGY_SERVER
+ENV NTS_NF_STANDALONE_START_FEATURES="datastore-populate netconf-call-home"
+ENV SDN_CONTROLLER_IP="127.0.0.1"
+ENV SDN_CONTROLLER_PROTOCOL="http"
+ENV SDN_CONTROLLER_PORT="8181"
+ENV SDN_CONTROLLER_CALLHOME_IP="127.0.0.1"
+ENV SDN_CONTROLLER_CALLHOME_PORT="6666"
+ENV SDN_CONTROLLER_USERNAME="admin"
+ENV SDN_CONTROLLER_PASSWORD="admin"
+ENV ODL_HOME=/opt/opendaylight
# run
WORKDIR /opt/dev/workspace
IPv6_ENABLED: ${IPv6_ENABLED}
SSH_CONNECTIONS: ${SSH_CONNECTIONS}
TLS_CONNECTIONS: ${TLS_CONNECTIONS}
-
+
SDN_CONTROLLER_PROTOCOL: ${SDN_CONTROLLER_PROTOCOL}
SDN_CONTROLLER_IP: ${SDN_CONTROLLER_IP}
SDN_CONTROLLER_PORT: ${SDN_CONTROLLER_PORT}
VES_ENDPOINT_AUTH_METHOD: ${VES_ENDPOINT_AUTH_METHOD}
VES_ENDPOINT_USERNAME: ${VES_ENDPOINT_USERNAME}
VES_ENDPOINT_PASSWORD: ${VES_ENDPOINT_PASSWORD}
- # networks:
- # app_net:
ntsim-ng-o-ru:
image: "${DOCKER_REPO}nts-ng-o-ran-ru-fh:${NTS_BUILD_VERSION}"
VES_ENDPOINT_USERNAME: ${VES_ENDPOINT_USERNAME}
VES_ENDPOINT_PASSWORD: ${VES_ENDPOINT_PASSWORD}
- # networks:
- # app_net:
-
ntsim-ng-o-du:
image: "${DOCKER_REPO}nts-ng-o-ran-du:${NTS_BUILD_VERSION}"
cap_add:
NTS_HOST_NETCONF_TLS_BASE_PORT: ${NTS_HOST_NETCONF_TLS_BASE_PORT}
NTS_HOST_TRANSFER_FTP_BASE_PORT: ${NTS_HOST_TRANSFER_FTP_BASE_PORT}
NTS_HOST_TRANSFER_SFTP_BASE_PORT: ${NTS_HOST_TRANSFER_SFTP_BASE_PORT}
-
+
SDN_CONTROLLER_PROTOCOL: ${SDN_CONTROLLER_PROTOCOL}
SDN_CONTROLLER_IP: ${SDN_CONTROLLER_IP}
SDN_CONTROLLER_PORT: ${SDN_CONTROLLER_PORT}
VES_ENDPOINT_AUTH_METHOD: ${VES_ENDPOINT_AUTH_METHOD}
VES_ENDPOINT_USERNAME: ${VES_ENDPOINT_USERNAME}
VES_ENDPOINT_PASSWORD: ${VES_ENDPOINT_PASSWORD}
- # networks:
- # app_net:
-
-# networks:
-# app_net:
-# driver: bridge
-# ipam:
-# driver: default
-# We can attach to any other docker network, like in the example below
+ o-ran-sc-topology-service:
+ image: "${DOCKER_REPO}o-ran-sc-topology-service:${NTS_BUILD_VERSION}"
+ stop_grace_period: 5m
+ hostname: "o-ran-sc-topology-service"
+ ports:
+ - ":::58181:8181"
+ volumes:
+ - ./deploy/smo-nts-ng-topology-server/data/tapi-common-operational.json:/opt/dev/deploy/data/tapi-common-operational.json
+ - ./deploy/smo-nts-ng-topology-server/data/tapi-common-running.json:/opt/dev/deploy/data/tapi-common-running.json
+
+# We can attach to any other docker network, like in the example below
networks:
default:
external:
labels:
- "description=nts-ng"
dockerfile: local.Dockerfile
+
+ ###################################################
+ ####### Topology service image
+ ###################################################
+ o-ran-sc-topology-service:
+ image: ${DOCKER_REPO}o-ran-sc-topology-service:${NTS_BUILD_VERSION}
+ build:
+ context: ./deploy/smo-nts-ng-topology-server
+ dockerfile: local.Dockerfile
#!/bin/bash
+################################################################################
+# Copyright 2022 highstreet technologies GmbH
+#
+# 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.
+################################################################################
+
source .env
-docker-compose -f nts-ng-docker-image-build-ubuntu.yaml build --build-arg NTS_BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ') --build-arg NTS_BUILD_VERSION=$NTS_BUILD_VERSION
+docker-compose -f nts-ng-docker-image-build-ubuntu.yaml build --build-arg NTS_BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ') --build-arg NTS_BUILD_VERSION=$NTS_BUILD_VERSION nts-ng-base o-ran-sc-topology-service