blob: 5af325a50b9f477c835c9b00851117f9c4766d26 [file] [log] [blame]
Claudio D. Gasparini4e07d482021-02-11 08:51:06 +01001# ============LICENSE_START=======================================================
2# Copyright (c) 2020 Pantheon.tech.
3# Modifications Copyright (C) 2021 Bell Canada.
danielhanrahan9d152cb2024-01-29 13:44:13 +00004# Modifications Copyright (C) 2022-2024 Nordix Foundation.
Claudio D. Gasparini4e07d482021-02-11 08:51:06 +01005# ================================================================================
6# Licensed under the Apache License, Version 2.0 (the "License");
7# you may not use this file except in compliance with the License.
8# You may obtain a copy of the License at
9#
10# http://www.apache.org/licenses/LICENSE-2.0
11#
12# Unless required by applicable law or agreed to in writing, software
13# distributed under the License is distributed on an "AS IS" BASIS,
14# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15# See the License for the specific language governing permissions and
16# limitations under the License.
17# ============LICENSE_END=========================================================
18
Claudio David Gasparini900ba022020-11-08 22:18:36 +010019services:
JosephKeenand181b0e2021-10-01 10:40:47 +010020
ToineSiebelinkb2c8bc62023-02-07 10:30:03 +000021 ### docker-compose --profile dmi-service up -d -> run CPS services incl. dmi-plugin ###
22 ### docker-compose --profile dmi-stub --profile monitoring up -d -> run CPS with stubbed dmi-plugin (for registration performance testing)
sourabh_sourabhe2527ea2024-07-19 17:27:54 +010023 ### docker-compose --profile dmi-stub --profile tracing up -d -> run CPS with stubbed dmi-plugin (for open telemetry tracing testing make ONAP_TRACING_ENABLED "true" later "http://localhost:16686" can be accessed from browser)
JosephKeenan1c908482022-06-16 16:19:09 +010024 ### to disable notifications make notification.enabled to false & comment out kafka/zookeeper services ###
Ruslan Kashapov1e5bd942021-01-22 12:53:01 +020025
Claudio David Gasparini900ba022020-11-08 22:18:36 +010026 dbpostgresql:
27 container_name: dbpostgresql
DylanB95EST6c26ba62022-08-04 13:25:31 +010028 image: postgres:14.1-alpine
Claudio David Gasparini900ba022020-11-08 22:18:36 +010029 ports:
puthuparambil.aditya73d58862022-01-28 13:22:33 +000030 - ${DB_PORT:-5432}:5432
Claudio David Gasparini900ba022020-11-08 22:18:36 +010031 environment:
Claudio David Gasparini5faa49c2020-11-12 08:28:07 +010032 POSTGRES_DB: cpsdb
Bruno Sakoto6658f502021-07-01 22:28:17 -040033 POSTGRES_USER: ${DB_USERNAME:-cps}
34 POSTGRES_PASSWORD: ${DB_PASSWORD:-cps}
danielhanrahan4e2c9272024-03-14 18:02:09 +000035 volumes:
36 - ./postgres-init.sql:/docker-entrypoint-initdb.d/postgres-init.sql
danielhanrahan9d152cb2024-01-29 13:44:13 +000037 deploy:
38 resources:
39 reservations:
40 cpus: '1'
41 memory: 1G
42 limits:
43 cpus: '6'
44 memory: 3G
Renu Kumariff52b942021-05-27 23:16:32 -040045
JosephKeenand181b0e2021-10-01 10:40:47 +010046 cps-and-ncmp:
tragaitdd6021e2021-10-19 16:46:21 +010047 image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/cps-and-ncmp:${CPS_VERSION:-latest}
JosephKeenand181b0e2021-10-01 10:40:47 +010048 environment:
tragaitdd6021e2021-10-19 16:46:21 +010049 CPS_USERNAME: ${CPS_CORE_USERNAME:-cpsuser}
50 CPS_PASSWORD: ${CPS_CORE_PASSWORD:-cpsr0cks!}
DylanB95EST4472bef2021-11-03 11:20:07 +000051 DB_HOST: ${DB_HOST:-dbpostgresql}
JosephKeenand181b0e2021-10-01 10:40:47 +010052 DB_USERNAME: ${DB_USERNAME:-cps}
53 DB_PASSWORD: ${DB_PASSWORD:-cps}
54 DMI_USERNAME: ${DMI_USERNAME:-cpsuser}
55 DMI_PASSWORD: ${DMI_PASSWORD:-cpsr0cks!}
halil.cakal1340c572023-04-12 15:19:45 +010056 KAFKA_BOOTSTRAP_SERVER: kafka:29092
JosephKeenan1c908482022-06-16 16:19:09 +010057 notification.enabled: 'true'
sourabh_sourabhe2527ea2024-07-19 17:27:54 +010058 ONAP_TRACING_ENABLED: 'false'
59 ONAP_OTEL_SAMPLER_JAEGER_REMOTE_ENDPOINT: http://jaeger-service:14250
60 ONAP_OTEL_EXPORTER_ENDPOINT: http://jaeger-service:4317
JosephKeenand181b0e2021-10-01 10:40:47 +010061 restart: unless-stopped
62 depends_on:
JosephKeenanf31c7f82022-05-24 18:59:25 +010063 - dbpostgresql
danielhanrahan9d152cb2024-01-29 13:44:13 +000064 deploy:
halil.cakal3a9613f2024-06-17 09:24:59 +010065 replicas: 2
danielhanrahan9d152cb2024-01-29 13:44:13 +000066 resources:
67 reservations:
68 cpus: '2'
69 memory: 2G
70 limits:
71 cpus: '3'
72 memory: 3G
JosephKeenanf31c7f82022-05-24 18:59:25 +010073
halil.cakal3a9613f2024-06-17 09:24:59 +010074 nginx:
75 container_name: nginx-loadbalancer
76 image: nginx:latest
77 ports:
78 - ${CPS_CORE_PORT:-8883}:80
79 depends_on:
80 - cps-and-ncmp
81 volumes:
82 - ./nginx.conf:/etc/nginx/nginx.conf
83 - ./proxy_params:/etc/nginx/proxy_params
halil.cakal3a9613f2024-06-17 09:24:59 +010084
JosephKeenanf31c7f82022-05-24 18:59:25 +010085 ### if kafka is not required comment out zookeeper and kafka ###
86 zookeeper:
87 image: confluentinc/cp-zookeeper:6.2.1
88 container_name: zookeeper
89 ports:
90 - '2181:2181'
91 environment:
92 ZOOKEEPER_CLIENT_PORT: 2181
93
94 kafka:
95 image: confluentinc/cp-kafka:6.2.1
96 container_name: kafka
97 ports:
halil.cakal1340c572023-04-12 15:19:45 +010098 - '9092:9092'
JosephKeenanf31c7f82022-05-24 18:59:25 +010099 depends_on:
100 - zookeeper
101 environment:
102 KAFKA_BROKER_ID: 1
103 KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
JosephKeenanf31c7f82022-05-24 18:59:25 +0100104 KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,CONNECTIONS_FROM_HOST:PLAINTEXT
halil.cakal1340c572023-04-12 15:19:45 +0100105 KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:29092,CONNECTIONS_FROM_HOST://localhost:9092
JosephKeenanf31c7f82022-05-24 18:59:25 +0100106 KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
107
JosephKeenanf31c7f82022-05-24 18:59:25 +0100108 ncmp-dmi-plugin:
109 container_name: ncmp-dmi-plugin
mpriyank35e0df32024-06-14 15:02:53 +0100110 image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/ncmp-dmi-plugin:${DMI_VERSION:-1.6.0-SNAPSHOT-latest}
JosephKeenanf31c7f82022-05-24 18:59:25 +0100111 ports:
112 - ${DMI_PORT:-8783}:8080
JosephKeenanf31c7f82022-05-24 18:59:25 +0100113 environment:
114 CPS_USERNAME: ${CPS_CORE_USERNAME:-cpsuser}
115 CPS_PASSWORD: ${CPS_CORE_PASSWORD:-cpsr0cks!}
116 CPS_CORE_HOST: ${CPS_CORE_HOST:-cps-and-ncmp}
117 CPS_CORE_PORT: ${CPS_CORE_PORT:-8080}
118 CPS_CORE_USERNAME: ${CPS_CORE_USERNAME:-cpsuser}
119 CPS_CORE_PASSWORD: ${CPS_CORE_PASSWORD:-cpsr0cks!}
120 SDNC_HOST: ${SDNC_HOST:-sdnc}
121 SDNC_PORT: ${SDNC_PORT:-8181}
122 SDNC_USERNAME: ${SDNC_USERNAME:-admin}
123 SDNC_PASSWORD: ${SDNC_PASSWORD:-Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U}
124 DMI_SERVICE_URL: ${DMI_SERVICE_URL:-http://ncmp-dmi-plugin:8783}
halil.cakal1340c572023-04-12 15:19:45 +0100125 DMI_SERVICE_NAME: ${DMI_SERVICE_NAME:-dminame1}
JosephKeenanf31c7f82022-05-24 18:59:25 +0100126 DMI_USERNAME: ${DMI_USERNAME:-cpsuser}
127 DMI_PASSWORD: ${DMI_PASSWORD:-cpsr0cks!}
halil.cakal1340c572023-04-12 15:19:45 +0100128 KAFKA_BOOTSTRAP_SERVER: kafka:29092
JosephKeenanf31c7f82022-05-24 18:59:25 +0100129 restart: unless-stopped
ToineSiebelinkb2c8bc62023-02-07 10:30:03 +0000130 profiles:
131 - dmi-service
132
sourabh_sourabh7cda5e92023-07-05 00:56:05 +0100133 ncmp-dmi-plugin-demo-and-csit-stub:
134 container_name: ncmp-dmi-plugin-demo-and-csit-stub
135 image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/dmi-plugin-demo-and-csit-stub:${DMI_DEMO_STUB_VERSION:-latest}
ToineSiebelinkb2c8bc62023-02-07 10:30:03 +0000136 ports:
sourabh_sourabh7cda5e92023-07-05 00:56:05 +0100137 - ${DMI_DEMO_STUB_PORT:-8784}:8092
138 environment:
halil.cakal1340c572023-04-12 15:19:45 +0100139 KAFKA_BOOTSTRAP_SERVER: kafka:29092
sourabh_sourabh7cda5e92023-07-05 00:56:05 +0100140 NCMP_CONSUMER_GROUP_ID: ncmp-group
141 NCMP_ASYNC_M2M_TOPIC: ncmp-async-m2m
JvD_Ericsson1516fa02024-01-31 13:47:28 +0000142 MODULE_REFERENCES_DELAY_MS: 100
143 MODULE_RESOURCES_DELAY_MS: 1000
halil.cakala9ee0ab2024-07-16 13:53:05 +0100144 READ_DATA_FOR_CM_HANDLE_DELAY_MS: 300
145 WRITE_DATA_FOR_CM_HANDLE_DELAY_MS: 670
ToineSiebelinkb2c8bc62023-02-07 10:30:03 +0000146 restart: unless-stopped
147 profiles:
148 - dmi-stub
sourabh_sourabh7cda5e92023-07-05 00:56:05 +0100149 - dmi-service
emacleef6f16f52023-01-25 12:18:15 +0000150
ToineSiebelinkd7914bc2024-07-04 15:15:36 +0100151 policy-executor-stub:
152 container_name: policy-executor-stub
153 image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/policy-executor-stub:latest
154 ports:
155 - 8785:8080
156 restart: unless-stopped
157 profiles:
158 - policy-executor-stub
159
ToineSiebelinkb2c8bc62023-02-07 10:30:03 +0000160 prometheus:
161 container_name: prometheus-container
162 image: prom/prometheus:latest
163 ports:
164 - 9090:9090
165 restart: always
166 volumes:
167 - ./prometheus.yml:/etc/prometheus/prometheus.yml
168 profiles:
169 - monitoring
170
171 grafana:
172 image: grafana/grafana-oss:latest
173 user: ""
174 container_name: grafana-container
175 depends_on:
176 prometheus:
177 condition: service_started
178 ports:
179 - 3000:3000
180 volumes:
181 - grafana:/var/lib/grafana
182 environment:
183 - GF_SECURITY_ADMIN_PASSWORD=admin
184 - GF_SERVER_DOMAIN:localhost
185 profiles:
186 - monitoring
187
halil.cakal65b870b2024-07-25 11:12:29 +0100188 kafka-ui:
189 container_name: kafka-ui
190 image: provectuslabs/kafka-ui:latest
191 ports:
192 - 8089:8080
193 environment:
194 DYNAMIC_CONFIG_ENABLED: 'true'
195 KAFKA_CLUSTERS_0_NAME: 'cps-kafka-local'
196 KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS: kafka:29092
197 profiles:
198 - monitoring
199
sourabh_sourabhe2527ea2024-07-19 17:27:54 +0100200 jaeger-service:
201 container_name: jaeger-service
202 image: jaegertracing/all-in-one:latest
203 ports:
204 - 16686:16686
205 restart: unless-stopped
206 profiles:
207 - tracing
208
ToineSiebelinkb2c8bc62023-02-07 10:30:03 +0000209volumes:
210 grafana: