--- /dev/null
+################################################################################
+# Copyright 2021 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.
+#
+version: '3.8'
+services:
+ persistence:
+ image: ${PERSISTENCE_IMAGE}
+ container_name: persistence
+ environment:
+ - discovery.type=single-node
+ networks:
+ oam:
+ ipv4_address: ${PERSISTENCE_IP}
+
+ sdnr:
+ image: ${SDNC_IMAGE}
+ container_name: sdnr
+ ports:
+ - ${SDNC_REST_PORT}:8181
+ - 8101:8101
+ environment:
+ - SDNC_CONFIG_DIR=/opt/onap/ccsdk/data/properties
+ - ODL_CERT_DIR=${SDNC_CERT_DIR}
+ - ENABLE_ODL_CLUSTER=false
+ - SDNC_REPLICAS=0
+ - CCSDK_REPLICAS=0
+ - DOMAIN=""
+ - SDNRWT=true
+ - SDNRINIT=true
+ - SDNRONLY=true
+ - SDNRDBURL=http://persistence:9200
+ - A1_ADAPTER_NORTHBOUND=false
+ - ODL_ADMIN_PASSWORD=${ADMIN_PASSWORD}
+ - JAVA_OPTS=-Xms256m -Xmx4g
+ volumes:
+ - ./sdnr/mountpoint-registrar.properties:/opt/opendaylight/etc/mountpoint-registrar.properties
+ - ./sdnr/certs/certs.properties:${SDNC_CERT_DIR}/certs.properties
+ - ./sdnr/certs/keys0.zip:${SDNC_CERT_DIR}/keys0.zip
+ networks:
+ oam:
+ ipv4_address: ${SDNC_IP}
+ depends_on:
+ - persistence
+
+ zookeeper:
+ image: ${ZOOKEEPER_IMAGE}
+ container_name: zookeeper
+ ports:
+ - 2181:2181
+ environment:
+ ZOOKEEPER_REPLICAS: 1
+ ZOOKEEPER_TICK_TIME: 2000
+ ZOOKEEPER_SYNC_LIMIT: 5
+ ZOOKEEPER_INIT_LIMIT: 10
+ ZOOKEEPER_MAX_CLIENT_CNXNS: 200
+ ZOOKEEPER_AUTOPURGE_SNAP_RETAIN_COUNT: 3
+ ZOOKEEPER_AUTOPURGE_PURGE_INTERVAL: 24
+ ZOOKEEPER_CLIENT_PORT: 2181
+ KAFKA_OPTS: -Djava.security.auth.login.config=/etc/zookeeper/secrets/jaas/zk_server_jaas.conf -Dzookeeper.kerberos.removeHostFromPrincipal=true -Dzookeeper.kerberos.removeRealmFromPrincipal=true -Dzookeeper.authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider -Dzookeeper.requireClientAuthScheme=sasl
+ ZOOKEEPER_SERVER_ID:
+ volumes:
+ - ./zookeeper/zk_server_jaas.conf:/etc/zookeeper/secrets/jaas/zk_server_jaas.conf
+ networks:
+ oam:
+ aliases:
+ - zookeeper
+ ipv4_address: ${ZOOKEEPER_IP}
+
+ kafka:
+ image: ${KAFKA_IMAGE}
+ container_name: kafka
+ ports:
+ - 9092:9092
+ environment:
+ enableCadi: 'false'
+ KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
+ KAFKA_ZOOKEEPER_CONNECTION_TIMEOUT_MS: 40000
+ KAFKA_ZOOKEEPER_SESSION_TIMEOUT_MS: 40000
+ KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INTERNAL_PLAINTEXT:PLAINTEXT,EXTERNAL_PLAINTEXT:PLAINTEXT
+ KAFKA_ADVERTISED_LISTENERS: INTERNAL_PLAINTEXT://kafka:9092
+ KAFKA_LISTENERS: INTERNAL_PLAINTEXT://0.0.0.0:9092
+ KAFKA_INTER_BROKER_LISTENER_NAME: INTERNAL_PLAINTEXT
+ KAFKA_CONFLUENT_SUPPORT_METRICS_ENABLE: 'false'
+ KAFKA_OPTS: -Djava.security.auth.login.config=/etc/kafka/secrets/jaas/zk_client_jaas.conf
+ KAFKA_ZOOKEEPER_SET_ACL: 'true'
+ KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
+ # Reduced the number of partitions only to avoid the timeout error for the first subscribe call in slow environment
+ KAFKA_OFFSETS_TOPIC_NUM_PARTITIONS: 1
+ volumes:
+ - ./kafka/zk_client_jaas.conf:/etc/kafka/secrets/jaas/zk_client_jaas.conf
+ networks:
+ oam:
+ aliases:
+ - kafka
+ ipv4_address: ${KAFKA_IP}
+ depends_on:
+ - zookeeper
+
+ dmaap:
+ container_name: onap-dmaap
+ image: ${DMAAP_IMAGE}
+ ports:
+ - 3904:3904
+ - 3905:3905
+ environment:
+ enableCadi: 'false'
+ volumes:
+ - ./dmaap/MsgRtrApi.properties:/appl/dmaapMR1/bundleconfig/etc/appprops/MsgRtrApi.properties
+ - ./dmaap/logback.xml:/appl/dmaapMR1/bundleconfig/etc/logback.xml
+ - ./dmaap/cadi.properties:/appl/dmaapMR1/etc/cadi.properties
+ networks:
+ oam:
+ aliases:
+ - dmaap
+ ipv4_address: ${DMAAP_IP}
+ depends_on:
+ - zookeeper
+ - kafka
+
+ ves-collector:
+ image: ${VES_COLLECTOR_IMAGE}
+ container_name: ves-collector
+ environment:
+ DMAAPHOST: onap-dmaap
+ ports:
+ - 8080:8080
+ - 8443:8443
+ volumes:
+ - ./ves-collector/collector.properties:/opt/app/VESCollector/etc/collector.properties
+ networks:
+ oam:
+ ipv4_address: ${VES_COLLECTOR_IP}
+
+ ntsim-ng-o-du-1122:
+ image: "${DOCKER_REPO}nts-ng-o-ran-du:${NTS_BUILD_VERSION}"
+ container_name: ntsim-ng-o-du-1122
+ hostname: "highstreet-O-DU-1122"
+ cap_add:
+ - SYS_ADMIN
+ stop_grace_period: 5m
+ environment:
+ NTS_NF_STANDALONE_START_FEATURES: "datastore-populate ves-heartbeat ves-file-ready ves-pnf-registration web-cut-through"
+ NTS_NF_MOUNT_POINT_ADDRESSING_METHOD: ${NTS_NF_MOUNT_POINT_ADDRESSING_METHOD}
+ NTS_HOST_IP: ${NTS_HOST_IP}
+ NTS_HOST_BASE_PORT: ${NTS_HOST_BASE_PORT}
+ NTS_HOST_NETCONF_SSH_BASE_PORT: ${NTS_HOST_NETCONF_SSH_BASE_PORT}
+ 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}
+ NTS_BUILD_DATE: ${NTS_BUILD_DATE}
+
+ SDN_CONTROLLER_PROTOCOL: ${SDN_CONTROLLER_PROTOCOL}
+ SDN_CONTROLLER_IP: ${SDNC_IP}
+ SDN_CONTROLLER_PORT: ${SDNC_REST_PORT}
+ SDN_CONTROLLER_USERNAME: ${ADMIN_USERNAME}
+ SDN_CONTROLLER_PASSWORD: ${ADMIN_PASSWORD}
+
+ VES_COMMON_HEADER_VERSION: ${VES_COMMON_HEADER_VERSION}
+ VES_ENDPOINT_PROTOCOL: ${VES_ENDPOINT_PROTOCOL}
+ VES_ENDPOINT_IP: ${VES_COLLECTOR_IP}
+ VES_ENDPOINT_PORT: ${VES_ENDPOINT_PORT}
+ VES_ENDPOINT_AUTH_METHOD: ${VES_ENDPOINT_AUTH_METHOD}
+ VES_ENDPOINT_USERNAME: ${VES_ENDPOINT_USERNAME}
+ VES_ENDPOINT_PASSWORD: ${VES_ENDPOINT_PASSWORD}
+ volumes:
+ - ./ntsim-ng-o-du/config.json:/opt/dev/ntsim-ng/config/config.json
+ - ./ntsim-ng-o-du/o-ran-sc-du-hello-world-operational.xml:/opt/dev/deploy/data/o-ran-sc-du-hello-world-operational.xml
+ - ./ntsim-ng-o-du/o-ran-sc-du-hello-world-running.xml:/opt/dev/deploy/data/o-ran-sc-du-hello-world-running.xml
+ depends_on:
+ - sdnr
+ - ves-collector
+ networks:
+ oam:
+
+networks:
+ oam:
+ driver: bridge
+ ipam:
+ driver: default
+ config:
+ - subnet: ${NETWORK_SUBNET_IP}
+ gateway: ${NETWORK_GATEWAY_IP}