# ============LICENSE_START=======================================================
# Copyright (c) 2020 Pantheon.tech.
# Modifications Copyright (C) 2021 Bell Canada.
-# Modifications Copyright (C) 2021 Nordix Foundation
+# Modifications Copyright (C) 2022-2023 Nordix Foundation.
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# limitations under the License.
# ============LICENSE_END=========================================================
-version: "3.7"
-
services:
- ### Services cps-service, cps-ncmp, zookeeper and kafka are commented below, these
- ### services can be un-commented and used on need to use basis. Only minimal
- ### services will run (dbpostgresql, cps-and-ncmp and ncmp-dmi-plugin) by default.
-
- #cps-standalone:
- # container_name: cps-service
- # image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/cps-service:${VERSION:-latest}
- # ports:
- # - "8881:8080"
- # - "8887:8081"
- # environment:
- # CPS_USERNAME: ${CPS_USERNAME:-cpsuser}
- # CPS_PASSWORD: ${CPS_PASSWORD:-cpsr0cks!}
- # DB_HOST: dbpostgresql
- # DB_USERNAME: ${DB_USERNAME:-cps}
- # DB_PASSWORD: ${DB_PASSWORD:-cps}
- # #KAFKA_BOOTSTRAP_SERVER: kafka:9092
- # #notification.data-updated.enabled: 'true'
- # #NOTIFICATION_DATASPACE_FILTER_PATTERNS: '.*'
- # restart: unless-stopped
- # depends_on:
- # - dbpostgresql
- #ncmp-standalone:
- # container_name: cps-ncmp
- # image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/cps-ncmp:${VERSION:-latest}
- # ports:
- # - "8882:8080"
- # - "8887:8081"
- # environment:
- # CPS_USERNAME: ${CPS_USERNAME:-cpsuser}
- # CPS_PASSWORD: ${CPS_PASSWORD:-cpsr0cks!}
- # DB_HOST: dbpostgresql
- # DB_USERNAME: ${DB_USERNAME:-cps}
- # DB_PASSWORD: ${DB_PASSWORD:-cps}
- # DMI_USERNAME: ${DMI_USERNAME:-cpsuser}
- # DMI_PASSWORD: ${DMI_PASSWORD:-cpsr0cks!}
- # #KAFKA_BOOTSTRAP_SERVER: kafka:9092
- # #notification.data-updated.enabled: 'true'
- # #NOTIFICATION_DATASPACE_FILTER_PATTERNS: '.*'
- # restart: unless-stopped
- # depends_on:
- # - dbpostgresql
-
- # zookeeper:
- # image: confluentinc/cp-zookeeper:6.1.1
- # environment:
- # ZOOKEEPER_CLIENT_PORT: 2181
- # ZOOKEEPER_TICK_TIME: 2000
- # ports:
- # - 22181:2181
- #
- # kafka:
- # image: confluentinc/cp-kafka:6.1.1
- # depends_on:
- # - zookeeper
- # ports:
- # - 29092:29092
- # environment:
- # KAFKA_BROKER_ID: 1
- # KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
- # KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092,PLAINTEXT_HOST://localhost:29092
- # KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
- # KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
- # KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
+ ### docker-compose --profile dmi-service up -d -> run CPS services incl. dmi-plugin ###
+ ### docker-compose --profile dmi-stub --profile monitoring up -d -> run CPS with stubbed dmi-plugin (for registration performance testing)
+ ### to disable notifications make notification.enabled to false & comment out kafka/zookeeper services ###
dbpostgresql:
container_name: dbpostgresql
- image: postgres:13.2-alpine
+ image: postgres:14.1-alpine
ports:
- - '5432:5432'
+ - ${DB_PORT:-5432}:5432
environment:
POSTGRES_DB: cpsdb
POSTGRES_USER: ${DB_USERNAME:-cps}
environment:
CPS_USERNAME: ${CPS_CORE_USERNAME:-cpsuser}
CPS_PASSWORD: ${CPS_CORE_PASSWORD:-cpsr0cks!}
- DB_HOST: ${DB_HOST}
+ DB_HOST: ${DB_HOST:-dbpostgresql}
DB_USERNAME: ${DB_USERNAME:-cps}
DB_PASSWORD: ${DB_PASSWORD:-cps}
DMI_USERNAME: ${DMI_USERNAME:-cpsuser}
DMI_PASSWORD: ${DMI_PASSWORD:-cpsr0cks!}
- #KAFKA_BOOTSTRAP_SERVER: kafka:9092
- #notification.data-updated.enabled: 'true'
- #NOTIFICATION_DATASPACE_FILTER_PATTERNS: '.*'
+ KAFKA_BOOTSTRAP_SERVER: kafka:9092
+ notification.enabled: 'true'
+ notification.async.executor.time-out-value-in-ms: 2000
+ NOTIFICATION_DATASPACE_FILTER_PATTERNS: '.*'
+ NCMP_TIMERS_ADVISED-MODULES-SYNC_SLEEP-TIME-MS: ${ADVISED_MODULES_SYNC_SLEEP_TIME_MS:-30000}
+ NCMP_TIMERS_CM-HANDLE-DATA-SYNC_SLEEP-TIME-MS: ${CMHANDLE_DATA_SYNC_SLEEP_TIME_MS:-30000}
restart: unless-stopped
depends_on:
- - dbpostgresql
\ No newline at end of file
+ - dbpostgresql
+
+ ### if kafka is not required comment out zookeeper and kafka ###
+ zookeeper:
+ image: confluentinc/cp-zookeeper:6.2.1
+ container_name: zookeeper
+ ports:
+ - '2181:2181'
+ environment:
+ ZOOKEEPER_CLIENT_PORT: 2181
+
+ kafka:
+ image: confluentinc/cp-kafka:6.2.1
+ container_name: kafka
+ ports:
+ - "19092:19092"
+ depends_on:
+ - zookeeper
+ environment:
+ KAFKA_BROKER_ID: 1
+ KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
+ KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092,CONNECTIONS_FROM_HOST://localhost:19092
+ KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,CONNECTIONS_FROM_HOST:PLAINTEXT
+ KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
+
+ ncmp-dmi-plugin:
+ container_name: ncmp-dmi-plugin
+ image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/ncmp-dmi-plugin:${DMI_VERSION:-1.4.0-SNAPSHOT-latest}
+ ports:
+ - ${DMI_PORT:-8783}:8080
+ - ${DMI_MANAGEMENT_PORT:-8787}:8081
+ environment:
+ CPS_USERNAME: ${CPS_CORE_USERNAME:-cpsuser}
+ CPS_PASSWORD: ${CPS_CORE_PASSWORD:-cpsr0cks!}
+ CPS_CORE_HOST: ${CPS_CORE_HOST:-cps-and-ncmp}
+ CPS_CORE_PORT: ${CPS_CORE_PORT:-8080}
+ CPS_CORE_USERNAME: ${CPS_CORE_USERNAME:-cpsuser}
+ CPS_CORE_PASSWORD: ${CPS_CORE_PASSWORD:-cpsr0cks!}
+ SDNC_HOST: ${SDNC_HOST:-sdnc}
+ SDNC_PORT: ${SDNC_PORT:-8181}
+ SDNC_USERNAME: ${SDNC_USERNAME:-admin}
+ SDNC_PASSWORD: ${SDNC_PASSWORD:-Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U}
+ DMI_SERVICE_URL: ${DMI_SERVICE_URL:-http://ncmp-dmi-plugin:8783}
+ DMI_USERNAME: ${DMI_USERNAME:-cpsuser}
+ DMI_PASSWORD: ${DMI_PASSWORD:-cpsr0cks!}
+ KAFKA_BOOTSTRAP_SERVER: kafka:9092
+ notification.data-updated.enabled: 'true'
+ NOTIFICATION_DATASPACE_FILTER_PATTERNS: '.*'
+ restart: unless-stopped
+ profiles:
+ - dmi-service
+
+ ncmp-dmi-plugin-demo-and-csit-stub:
+ container_name: ncmp-dmi-plugin-demo-and-csit-stub
+ image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/dmi-plugin-demo-and-csit-stub:${DMI_DEMO_STUB_VERSION:-latest}
+ ports:
+ - ${DMI_DEMO_STUB_PORT:-8784}:8092
+ environment:
+ KAFKA_BOOTSTRAP_SERVER: kafka:9092
+ NCMP_CONSUMER_GROUP_ID: ncmp-group
+ NCMP_ASYNC_M2M_TOPIC: ncmp-async-m2m
+ restart: unless-stopped
+ profiles:
+ - dmi-stub
+ - dmi-service
+
+ prometheus:
+ container_name: prometheus-container
+ image: prom/prometheus:latest
+ ports:
+ - 9090:9090
+ restart: always
+ volumes:
+ - ./prometheus.yml:/etc/prometheus/prometheus.yml
+ profiles:
+ - monitoring
+
+ grafana:
+ image: grafana/grafana-oss:latest
+ user: ""
+ container_name: grafana-container
+ depends_on:
+ prometheus:
+ condition: service_started
+ ports:
+ - 3000:3000
+ volumes:
+ - grafana:/var/lib/grafana
+ environment:
+ - GF_SECURITY_ADMIN_PASSWORD=admin
+ - GF_SERVER_DOMAIN:localhost
+ profiles:
+ - monitoring
+
+volumes:
+ grafana: