X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=docker-compose%2Fdocker-compose.yml;h=d0a157e8907e0fc62bfa820094fe00ff97215a2e;hb=refs%2Fheads%2Fmaster;hp=44ebd3bc6992ade4c8a735374f3758724c4668d5;hpb=73d588691b67c4e3981a32190adfbcd09e889f23;p=cps.git diff --git a/docker-compose/docker-compose.yml b/docker-compose/docker-compose.yml old mode 100755 new mode 100644 index 44ebd3bc6..f45383522 --- a/docker-compose/docker-compose.yml +++ b/docker-compose/docker-compose.yml @@ -1,7 +1,7 @@ # ============LICENSE_START======================================================= # Copyright (c) 2020 Pantheon.tech. # Modifications Copyright (C) 2021 Bell Canada. -# Modifications Copyright (C) 2021 Nordix Foundation +# Modifications Copyright (C) 2022-2024 Nordix Foundation. # ================================================================================ # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -16,91 +16,38 @@ # 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_CORE_USERNAME:-cpsuser} - # CPS_PASSWORD: ${CPS_CORE_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_CORE_USERNAME:-cpsuser} - # CPS_PASSWORD: ${CPS_CORE_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: - ${DB_PORT:-5432}:5432 environment: POSTGRES_DB: cpsdb POSTGRES_USER: ${DB_USERNAME:-cps} POSTGRES_PASSWORD: ${DB_PASSWORD:-cps} + volumes: + - ./postgres-init.sql:/docker-entrypoint-initdb.d/postgres-init.sql + deploy: + resources: + reservations: + cpus: '1' + memory: 1G + limits: + cpus: '6' + memory: 3G cps-and-ncmp: container_name: cps-and-ncmp image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/cps-and-ncmp:${CPS_VERSION:-latest} ports: - ${CPS_CORE_PORT:-8883}:8080 - - ${CPS_CORE_MANAGEMENT_PORT:-8887}:8081 + - ${CPS_CORE_DEBUG_PORT:-5005}:5005 environment: CPS_USERNAME: ${CPS_CORE_USERNAME:-cpsuser} CPS_PASSWORD: ${CPS_CORE_PASSWORD:-cpsr0cks!} @@ -109,9 +56,113 @@ services: 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:29092 + notification.enabled: 'true' + JAVA_TOOL_OPTIONS: -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 restart: unless-stopped depends_on: - - dbpostgresql \ No newline at end of file + - dbpostgresql + deploy: + resources: + reservations: + cpus: '2' + memory: 2G + limits: + cpus: '3' + memory: 3G + + ### 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: + - '9092:9092' + depends_on: + - zookeeper + environment: + KAFKA_BROKER_ID: 1 + KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 + KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,CONNECTIONS_FROM_HOST:PLAINTEXT + KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:29092,CONNECTIONS_FROM_HOST://localhost:9092 + 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.6.0-SNAPSHOT-latest} + ports: + - ${DMI_PORT:-8783}:8080 + 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_SERVICE_NAME: ${DMI_SERVICE_NAME:-dminame1} + DMI_USERNAME: ${DMI_USERNAME:-cpsuser} + DMI_PASSWORD: ${DMI_PASSWORD:-cpsr0cks!} + KAFKA_BOOTSTRAP_SERVER: kafka:29092 + 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:29092 + NCMP_CONSUMER_GROUP_ID: ncmp-group + NCMP_ASYNC_M2M_TOPIC: ncmp-async-m2m + MODULE_REFERENCES_DELAY_MS: 100 + MODULE_RESOURCES_DELAY_MS: 1000 + DATA_FOR_CM_HANDLE_DELAY_MS: 2500 + 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: