# ============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:
- #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'
- # 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'
- # restart: unless-stopped
- # depends_on:
- # - dbpostgresql
+ ### 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:14.1-alpine
+ ports:
+ - ${DB_PORT:-5432}:5432
+ environment:
+ POSTGRES_DB: cpsdb
+ POSTGRES_USER: ${DB_USERNAME:-cps}
+ POSTGRES_PASSWORD: ${DB_PASSWORD:-cps}
cps-and-ncmp:
container_name: cps-and-ncmp
- image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/cps-and-ncmp:${VERSION:-latest}
+ image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/cps-and-ncmp:${CPS_VERSION:-latest}
ports:
- - "8883:8080"
- - "8887:8081"
+ - ${CPS_CORE_PORT:-8883}:8080
+ - ${CPS_CORE_MANAGEMENT_PORT:-8887}:8081
environment:
- CPS_USERNAME: ${CPS_USERNAME:-cpsuser}
- CPS_PASSWORD: ${CPS_PASSWORD:-cpsr0cks!}
- DB_HOST: dbpostgresql
+ CPS_USERNAME: ${CPS_CORE_USERNAME:-cpsuser}
+ CPS_PASSWORD: ${CPS_CORE_PASSWORD:-cpsr0cks!}
+ 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'
+ 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
- dbpostgresql:
- container_name: dbpostgresql
- image: postgres:13.2-alpine
+ ### if kafka is not required comment out zookeeper and kafka ###
+ zookeeper:
+ image: confluentinc/cp-zookeeper:6.2.1
+ container_name: zookeeper
ports:
- - '5432:5432'
+ - '2181:2181'
environment:
- POSTGRES_DB: cpsdb
- POSTGRES_USER: ${DB_USERNAME:-cps}
- POSTGRES_PASSWORD: ${DB_PASSWORD:-cps}
+ ZOOKEEPER_CLIENT_PORT: 2181
-# 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
+ 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: