X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=solution%2Fnetwork%2Fdocker-compose.yaml;fp=solution%2Fnetwork%2Fdocker-compose.yaml;h=d8e2ed94acd1b4a6a752ac08b085f26eece98f59;hb=23f10696c62bec8d7feb376fd7f1599983de1fa8;hp=0000000000000000000000000000000000000000;hpb=a4c402d1a200767c39d0d1241ee229ae1673d29e;p=oam.git diff --git a/solution/network/docker-compose.yaml b/solution/network/docker-compose.yaml new file mode 100755 index 0000000..d8e2ed9 --- /dev/null +++ b/solution/network/docker-compose.yaml @@ -0,0 +1,157 @@ +################################################################################ +# Copyright 2023 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' + +x-common_env: &common_env + IPv6_ENABLED: ${IPv6_ENABLED} + SSH_CONNECTIONS: ${SSH_CONNECTIONS} + TLS_CONNECTIONS: ${TLS_CONNECTIONS} + 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} + + SDN_CONTROLLER_PROTOCOL: ${SDN_CONTROLLER_PROTOCOL} + SDN_CONTROLLER_IP: ${SDNC_DCN_HOST} + SDN_CONTROLLER_CALLHOME_IP: ${SDNC_DCN_HOST} + 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_DCN_HOST} + 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} + +x-du_env: &du_env + # NTS_NF_STANDALONE_START_FEATURES: "datastore-populate ves-heartbeat ves-file-ready ves-pnf-registration web-cut-through" + NTS_NF_STANDALONE_START_FEATURES: "datastore-populate ves-heartbeat ves-file-ready ves-pnf-registration ves-o1-pnf-registration web-cut-through" + +x-ru-env: &ru_env + NTS_NF_STANDALONE_START_FEATURES: "datastore-populate netconf-call-home web-cut-through" + +x-topo-env: &topo_env + NTS_NF_STANDALONE_START_FEATURES: "datastore-populate netconf-call-home web-cut-through" + +x-nf: &common_nf + stop_grace_period: 5m + extra_hosts: + - "controller.dcn.${GATEWAY_DOMAIN}:${HOST_IP}" + - "ves-collector.dcn.${GATEWAY_DOMAIN}:${HOST_IP}" + cap_add: + - SYS_ADMIN + - SYS_PTRACE + +services: + ntsim-ng-o-du-1122: + <<: *common_nf + image: "${NEXUS3_DOCKER_REPO}nts-ng-o-ran-du:${NTS_BUILD_VERSION}" + container_name: ntsim-ng-o-du-1122 + hostname: O-DU-1122 + volumes: + - ./ntsim-ng-o-du/config.json:/opt/dev/ntsim-ng/config/config.json + - ./ntsim-ng-o-du/o-ran-sc-du-hello-world-running.xml:/opt/dev/deploy/data/o-ran-sc-du-hello-world-running.xml + - ./ntsim-ng-o-du/o-ran-sc-du-hello-world-operational.xml:/opt/dev/deploy/data/o-ran-sc-du-hello-world-operational.xml + environment: + <<: [*common_env, *du_env] + + ntsim-ng-o-du-1123: + <<: *common_nf + image: "${LOCAL_DOCKER_REPO}nts-ng-o-ran-du-rel-18:${NTS_BUILD_VERSION}" + container_name: ntsim-ng-o-du-1123 + hostname: O-DU-1123 + volumes: + - ./ntsim-ng-o-du-rel-18/config.json:/opt/dev/ntsim-ng/config/config.json + - ./ntsim-ng-o-du-rel-18/_3gpp-common-managed-element-running.xml:/opt/dev/deploy/data/_3gpp-common-managed-element-running.xml + - ./ntsim-ng-o-du-rel-18/_3gpp-common-managed-element-operational.xml:/opt/dev/deploy/data/_3gpp-common-managed-element-operational.xml + environment: + <<: [*common_env, *du_env] + + ntsim-ng-o-ru-11221: + <<: *common_nf + image: "${NEXUS3_DOCKER_REPO}nts-ng-o-ran-ru-fh:${NTS_BUILD_VERSION}" + container_name: ntsim-ng-o-ru-11221 + hostname: O-RU-11221 + volumes: + - ./ntsim-ng-o-ru/o-ru-11221/config.json:/opt/dev/ntsim-ng/config/config.json + - ./ntsim-ng-o-ru/o-ru-11221/ietf-hardware-operational.json:/opt/dev/deploy/data/ietf-hardware-operational.json + - ./ntsim-ng-o-ru/o-ru-11221/ietf-hardware-running.json:/opt/dev/deploy/data/ietf-hardware-running.json + - ./ntsim-ng-o-ru/o-ru-11221/ietf-interfaces-operational.xml:/opt/dev/deploy/data/ietf-interfaces-operational.xml + - ./ntsim-ng-o-ru/o-ru-11221/ietf-interfaces-running.xml:/opt/dev/deploy/data/ietf-interfaces-running.xml + environment: + SDN_CONTROLLER_CALLHOME_PORT: ${SDN_CONTROLLER_CALLHOME_SSH_PORT} + <<: [*common_env, *ru_env] + + ntsim-ng-o-ru-11222: + <<: *common_nf + image: "${NEXUS3_DOCKER_REPO}nts-ng-o-ran-ru-fh:${NTS_BUILD_VERSION}" + container_name: ntsim-ng-o-ru-11222 + hostname: O-RU-11222 + volumes: + - ./ntsim-ng-o-ru/o-ru-11222/config.json:/opt/dev/ntsim-ng/config/config.json + - ./ntsim-ng-o-ru/o-ru-11222/ietf-hardware-operational.json:/opt/dev/deploy/data/ietf-hardware-operational.json + - ./ntsim-ng-o-ru/o-ru-11222/ietf-hardware-running.json:/opt/dev/deploy/data/ietf-hardware-running.json + - ./ntsim-ng-o-ru/o-ru-11222/ietf-interfaces-operational.xml:/opt/dev/deploy/data/ietf-interfaces-operational.xml + - ./ntsim-ng-o-ru/o-ru-11222/ietf-interfaces-running.xml:/opt/dev/deploy/data/ietf-interfaces-running.xml + environment: + SDN_CONTROLLER_CALLHOME_PORT: ${SDN_CONTROLLER_CALLHOME_SSH_PORT} + <<: [*common_env, *ru_env] + + ntsim-ng-o-ru-11223: + <<: *common_nf + image: "${NEXUS3_DOCKER_REPO}nts-ng-o-ran-ru-fh:${NTS_BUILD_VERSION}" + container_name: ntsim-ng-o-ru-11223 + hostname: O-RU-11223 + volumes: + - ./ntsim-ng-o-ru/o-ru-11223/config.json:/opt/dev/ntsim-ng/config/config.json + - ./ntsim-ng-o-ru/o-ru-11223/ietf-hardware-operational.json:/opt/dev/deploy/data/ietf-hardware-operational.json + - ./ntsim-ng-o-ru/o-ru-11223/ietf-hardware-running.json:/opt/dev/deploy/data/ietf-hardware-running.json + - ./ntsim-ng-o-ru/o-ru-11223/ietf-interfaces-operational.xml:/opt/dev/deploy/data/ietf-interfaces-operational.xml + - ./ntsim-ng-o-ru/o-ru-11223/ietf-interfaces-running.xml:/opt/dev/deploy/data/ietf-interfaces-running.xml + environment: + SDN_CONTROLLER_CALLHOME_PORT: ${SDN_CONTROLLER_CALLHOME_TLS_PORT} + <<: [*common_env, *ru_env] + + ntsim-ng-o-ru-11224: + <<: *common_nf + image: "${NEXUS3_DOCKER_REPO}nts-ng-o-ran-ru-fh:${NTS_BUILD_VERSION}" + container_name: ntsim-ng-o-ru-11224 + hostname: O-RU-11224 + volumes: + - ./ntsim-ng-o-ru/o-ru-11223/config.json:/opt/dev/ntsim-ng/config/config.json + - ./ntsim-ng-o-ru/o-ru-11223/ietf-hardware-operational.json:/opt/dev/deploy/data/ietf-hardware-operational.json + - ./ntsim-ng-o-ru/o-ru-11223/ietf-hardware-running.json:/opt/dev/deploy/data/ietf-hardware-running.json + - ./ntsim-ng-o-ru/o-ru-11223/ietf-interfaces-operational.xml:/opt/dev/deploy/data/ietf-interfaces-operational.xml + - ./ntsim-ng-o-ru/o-ru-11223/ietf-interfaces-running.xml:/opt/dev/deploy/data/ietf-interfaces-running.xml + environment: + SDN_CONTROLLER_CALLHOME_PORT: ${SDN_CONTROLLER_CALLHOME_TLS_PORT} + <<: [*common_env, *ru_env] + +networks: + default: + driver: bridge + name: network + enable_ipv6: true + ipam: + driver: default + config: + - subnet: ${NETWORK_SUBNET_DCN_IPv6}