Updating docker-compose version from 3.3 to 3.8
[cps.git] / docker-compose / docker-compose.yml
index 6894d3f..63aeca2 100644 (file)
-version: "3.7"
+# ============LICENSE_START=======================================================
+# Copyright (c) 2020 Pantheon.tech.
+# Modifications Copyright (C) 2021 Bell Canada.
+# Modifications Copyright (C) 2021-2022 Nordix Foundation.
+# ================================================================================
+# 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.
+# ============LICENSE_END=========================================================
+
+version: '3.8'
 
 services:
-  cps:
-    restart: unless-stopped
-    image: nexus3.onap.org:10001/onap/cps-service:${VERSION}
-    container_name: cps-service
+
+  ### docker-compose up -d -> run ALL services ###
+  ### to disable notifications make notification.enabled to false & comment out kafka/zookeeper services ###
+
+  dbpostgresql:
+    container_name: dbpostgresql
+    image: postgres:13.2-alpine
+    ports:
+      - ${DB_PORT:-5432}:5432
     environment:
-      DB_HOST: ${DB_HOST}
-      DB_USERNAME: ${DB_USERNAME}
-      DB_PASSWORD: ${DB_PASSWORD}
+      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:${CPS_VERSION:-latest}
     ports:
-      - "8080:8080"
-    network_mode: "host
+      - ${CPS_CORE_PORT:-8883}:8080
+      - ${CPS_CORE_MANAGEMENT_PORT:-8887}:8081
+    environment:
+      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.enabled: 'true'
+      notification.async.executor.time-out-value-in-ms: 2000
+      NOTIFICATION_DATASPACE_FILTER_PATTERNS: '.*'
+      TIMERS_ADVISED-MODULES-SYNC_SLEEP-TIME-MS: 2000
+    restart: unless-stopped
     depends_on:
       - dbpostgresql
 
-  dbpostgresql:
-    container_name: dbpostgresql
-    image: postgres
+  ### 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:
-      - '5432:5432'
+      - "19092:19092"
+    depends_on:
+      - zookeeper
     environment:
-      DB_NAME: cpsdb
-      DB_USERNAME: ${DB_USERNAME}
-      DB_PASSWORD: ${DB_PASSWORD}
\ No newline at end of file
+      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
+
+  ### Comment out this section if dmi plugin is not required ###
+  ncmp-dmi-plugin:
+    container_name: ncmp-dmi-plugin
+    image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/ncmp-dmi-plugin:${DMI_VERSION:-1.2.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