Claudio D. Gasparini | 4e07d48 | 2021-02-11 08:51:06 +0100 | [diff] [blame] | 1 | # ============LICENSE_START======================================================= |
| 2 | # Copyright (c) 2020 Pantheon.tech. |
| 3 | # Modifications Copyright (C) 2021 Bell Canada. |
danielhanrahan | 9d152cb | 2024-01-29 13:44:13 +0000 | [diff] [blame] | 4 | # Modifications Copyright (C) 2022-2024 Nordix Foundation. |
Claudio D. Gasparini | 4e07d48 | 2021-02-11 08:51:06 +0100 | [diff] [blame] | 5 | # ================================================================================ |
| 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 Gasparini | 900ba02 | 2020-11-08 22:18:36 +0100 | [diff] [blame] | 19 | services: |
JosephKeenan | d181b0e | 2021-10-01 10:40:47 +0100 | [diff] [blame] | 20 | |
ToineSiebelink | b2c8bc6 | 2023-02-07 10:30:03 +0000 | [diff] [blame] | 21 | ### 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_sourabh | e2527ea | 2024-07-19 17:27:54 +0100 | [diff] [blame] | 23 | ### 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) |
ToineSiebelink | 6191d41 | 2024-09-16 15:42:30 +0100 | [diff] [blame] | 24 | ### docker-compose --profile dmi-stub --profile policy-executor-stub up -d -> run CPS with stubbed dmi-plugin and policy executor stub (for policy executor service testing make POLICY_SERVICE_ENABLED "true") |
JosephKeenan | 1c90848 | 2022-06-16 16:19:09 +0100 | [diff] [blame] | 25 | ### to disable notifications make notification.enabled to false & comment out kafka/zookeeper services ### |
ToineSiebelink | 77e469b | 2024-10-01 18:40:39 +0100 | [diff] [blame] | 26 | ### DEBUG: Look for '### DEBUG' comments to enable CPS-NCMP debugging |
Ruslan Kashapov | 1e5bd94 | 2021-01-22 12:53:01 +0200 | [diff] [blame] | 27 | |
Claudio David Gasparini | 900ba02 | 2020-11-08 22:18:36 +0100 | [diff] [blame] | 28 | dbpostgresql: |
| 29 | container_name: dbpostgresql |
DylanB95EST | 6c26ba6 | 2022-08-04 13:25:31 +0100 | [diff] [blame] | 30 | image: postgres:14.1-alpine |
Claudio David Gasparini | 900ba02 | 2020-11-08 22:18:36 +0100 | [diff] [blame] | 31 | ports: |
puthuparambil.aditya | 73d5886 | 2022-01-28 13:22:33 +0000 | [diff] [blame] | 32 | - ${DB_PORT:-5432}:5432 |
Claudio David Gasparini | 900ba02 | 2020-11-08 22:18:36 +0100 | [diff] [blame] | 33 | environment: |
Claudio David Gasparini | 5faa49c | 2020-11-12 08:28:07 +0100 | [diff] [blame] | 34 | POSTGRES_DB: cpsdb |
Bruno Sakoto | 6658f50 | 2021-07-01 22:28:17 -0400 | [diff] [blame] | 35 | POSTGRES_USER: ${DB_USERNAME:-cps} |
| 36 | POSTGRES_PASSWORD: ${DB_PASSWORD:-cps} |
danielhanrahan | 4e2c927 | 2024-03-14 18:02:09 +0000 | [diff] [blame] | 37 | volumes: |
danielhanrahan | fe22688 | 2024-08-23 13:29:11 +0100 | [diff] [blame] | 38 | - ./config/postgres-init.sql:/docker-entrypoint-initdb.d/postgres-init.sql |
danielhanrahan | 9d152cb | 2024-01-29 13:44:13 +0000 | [diff] [blame] | 39 | deploy: |
| 40 | resources: |
| 41 | reservations: |
| 42 | cpus: '1' |
| 43 | memory: 1G |
| 44 | limits: |
| 45 | cpus: '6' |
| 46 | memory: 3G |
Renu Kumari | ff52b94 | 2021-05-27 23:16:32 -0400 | [diff] [blame] | 47 | |
JosephKeenan | d181b0e | 2021-10-01 10:40:47 +0100 | [diff] [blame] | 48 | cps-and-ncmp: |
tragait | dd6021e | 2021-10-19 16:46:21 +0100 | [diff] [blame] | 49 | image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/cps-and-ncmp:${CPS_VERSION:-latest} |
JosephKeenan | d181b0e | 2021-10-01 10:40:47 +0100 | [diff] [blame] | 50 | environment: |
tragait | dd6021e | 2021-10-19 16:46:21 +0100 | [diff] [blame] | 51 | CPS_USERNAME: ${CPS_CORE_USERNAME:-cpsuser} |
| 52 | CPS_PASSWORD: ${CPS_CORE_PASSWORD:-cpsr0cks!} |
DylanB95EST | 4472bef | 2021-11-03 11:20:07 +0000 | [diff] [blame] | 53 | DB_HOST: ${DB_HOST:-dbpostgresql} |
JosephKeenan | d181b0e | 2021-10-01 10:40:47 +0100 | [diff] [blame] | 54 | DB_USERNAME: ${DB_USERNAME:-cps} |
| 55 | DB_PASSWORD: ${DB_PASSWORD:-cps} |
| 56 | DMI_USERNAME: ${DMI_USERNAME:-cpsuser} |
| 57 | DMI_PASSWORD: ${DMI_PASSWORD:-cpsr0cks!} |
halil.cakal | 1340c57 | 2023-04-12 15:19:45 +0100 | [diff] [blame] | 58 | KAFKA_BOOTSTRAP_SERVER: kafka:29092 |
JosephKeenan | 1c90848 | 2022-06-16 16:19:09 +0100 | [diff] [blame] | 59 | notification.enabled: 'true' |
sourabh_sourabh | e2527ea | 2024-07-19 17:27:54 +0100 | [diff] [blame] | 60 | ONAP_TRACING_ENABLED: 'false' |
| 61 | ONAP_OTEL_SAMPLER_JAEGER_REMOTE_ENDPOINT: http://jaeger-service:14250 |
| 62 | ONAP_OTEL_EXPORTER_ENDPOINT: http://jaeger-service:4317 |
ToineSiebelink | 6191d41 | 2024-09-16 15:42:30 +0100 | [diff] [blame] | 63 | POLICY_SERVICE_ENABLED: 'false' |
ToineSiebelink | 77e469b | 2024-10-01 18:40:39 +0100 | [diff] [blame] | 64 | POLICY_SERVICE_DEFAULT_DECISION: 'deny from env' |
halil.cakal | 3f9f193 | 2024-09-23 11:05:16 +0100 | [diff] [blame] | 65 | JAVA_TOOL_OPTIONS: "-XX:InitialRAMPercentage=75.0 -XX:MaxRAMPercentage=75.0" |
ToineSiebelink | 77e469b | 2024-10-01 18:40:39 +0100 | [diff] [blame] | 66 | ### DEBUG: Uncomment next line to enable java debugging |
| 67 | ### DEBUG: JAVA_TOOL_OPTIONS: -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 |
JosephKeenan | d181b0e | 2021-10-01 10:40:47 +0100 | [diff] [blame] | 68 | restart: unless-stopped |
| 69 | depends_on: |
JosephKeenan | f31c7f8 | 2022-05-24 18:59:25 +0100 | [diff] [blame] | 70 | - dbpostgresql |
danielhanrahan | 9d152cb | 2024-01-29 13:44:13 +0000 | [diff] [blame] | 71 | deploy: |
ToineSiebelink | 77e469b | 2024-10-01 18:40:39 +0100 | [diff] [blame] | 72 | ### DEBUG: For easier debugging use just 1 instance (also update docker-compose/config/nginx/nginx.conf !) |
halil.cakal | 3a9613f | 2024-06-17 09:24:59 +0100 | [diff] [blame] | 73 | replicas: 2 |
danielhanrahan | 9d152cb | 2024-01-29 13:44:13 +0000 | [diff] [blame] | 74 | resources: |
danielhanrahan | 9d152cb | 2024-01-29 13:44:13 +0000 | [diff] [blame] | 75 | limits: |
| 76 | cpus: '3' |
halil.cakal | 3f9f193 | 2024-09-23 11:05:16 +0100 | [diff] [blame] | 77 | memory: 2G |
ToineSiebelink | 77e469b | 2024-10-01 18:40:39 +0100 | [diff] [blame] | 78 | ### DEBUG: Uncomment next 2 lines to enable java debugging (ensure 'ports' aligns with 'deploy') |
| 79 | ### DEBUG ports: |
| 80 | ### DEBUG - ${CPS_CORE_DEBUG_PORT:-5005}:5005 |
JosephKeenan | f31c7f8 | 2022-05-24 18:59:25 +0100 | [diff] [blame] | 81 | |
halil.cakal | 3a9613f | 2024-06-17 09:24:59 +0100 | [diff] [blame] | 82 | nginx: |
| 83 | container_name: nginx-loadbalancer |
| 84 | image: nginx:latest |
| 85 | ports: |
| 86 | - ${CPS_CORE_PORT:-8883}:80 |
| 87 | depends_on: |
| 88 | - cps-and-ncmp |
| 89 | volumes: |
danielhanrahan | fe22688 | 2024-08-23 13:29:11 +0100 | [diff] [blame] | 90 | - ./config/nginx/nginx.conf:/etc/nginx/nginx.conf |
| 91 | - ./config/nginx/proxy_params:/etc/nginx/proxy_params |
halil.cakal | 3a9613f | 2024-06-17 09:24:59 +0100 | [diff] [blame] | 92 | |
JosephKeenan | f31c7f8 | 2022-05-24 18:59:25 +0100 | [diff] [blame] | 93 | ### if kafka is not required comment out zookeeper and kafka ### |
| 94 | zookeeper: |
| 95 | image: confluentinc/cp-zookeeper:6.2.1 |
| 96 | container_name: zookeeper |
| 97 | ports: |
| 98 | - '2181:2181' |
| 99 | environment: |
| 100 | ZOOKEEPER_CLIENT_PORT: 2181 |
| 101 | |
| 102 | kafka: |
| 103 | image: confluentinc/cp-kafka:6.2.1 |
| 104 | container_name: kafka |
| 105 | ports: |
halil.cakal | 1340c57 | 2023-04-12 15:19:45 +0100 | [diff] [blame] | 106 | - '9092:9092' |
JosephKeenan | f31c7f8 | 2022-05-24 18:59:25 +0100 | [diff] [blame] | 107 | depends_on: |
| 108 | - zookeeper |
| 109 | environment: |
| 110 | KAFKA_BROKER_ID: 1 |
| 111 | KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 |
JosephKeenan | f31c7f8 | 2022-05-24 18:59:25 +0100 | [diff] [blame] | 112 | KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,CONNECTIONS_FROM_HOST:PLAINTEXT |
halil.cakal | 1340c57 | 2023-04-12 15:19:45 +0100 | [diff] [blame] | 113 | KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:29092,CONNECTIONS_FROM_HOST://localhost:9092 |
JosephKeenan | f31c7f8 | 2022-05-24 18:59:25 +0100 | [diff] [blame] | 114 | KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1 |
| 115 | |
JosephKeenan | f31c7f8 | 2022-05-24 18:59:25 +0100 | [diff] [blame] | 116 | ncmp-dmi-plugin: |
| 117 | container_name: ncmp-dmi-plugin |
mpriyank | 35e0df3 | 2024-06-14 15:02:53 +0100 | [diff] [blame] | 118 | image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/ncmp-dmi-plugin:${DMI_VERSION:-1.6.0-SNAPSHOT-latest} |
JosephKeenan | f31c7f8 | 2022-05-24 18:59:25 +0100 | [diff] [blame] | 119 | ports: |
| 120 | - ${DMI_PORT:-8783}:8080 |
JosephKeenan | f31c7f8 | 2022-05-24 18:59:25 +0100 | [diff] [blame] | 121 | environment: |
| 122 | CPS_USERNAME: ${CPS_CORE_USERNAME:-cpsuser} |
| 123 | CPS_PASSWORD: ${CPS_CORE_PASSWORD:-cpsr0cks!} |
| 124 | CPS_CORE_HOST: ${CPS_CORE_HOST:-cps-and-ncmp} |
| 125 | CPS_CORE_PORT: ${CPS_CORE_PORT:-8080} |
| 126 | CPS_CORE_USERNAME: ${CPS_CORE_USERNAME:-cpsuser} |
| 127 | CPS_CORE_PASSWORD: ${CPS_CORE_PASSWORD:-cpsr0cks!} |
| 128 | SDNC_HOST: ${SDNC_HOST:-sdnc} |
| 129 | SDNC_PORT: ${SDNC_PORT:-8181} |
| 130 | SDNC_USERNAME: ${SDNC_USERNAME:-admin} |
| 131 | SDNC_PASSWORD: ${SDNC_PASSWORD:-Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U} |
| 132 | DMI_SERVICE_URL: ${DMI_SERVICE_URL:-http://ncmp-dmi-plugin:8783} |
halil.cakal | 1340c57 | 2023-04-12 15:19:45 +0100 | [diff] [blame] | 133 | DMI_SERVICE_NAME: ${DMI_SERVICE_NAME:-dminame1} |
JosephKeenan | f31c7f8 | 2022-05-24 18:59:25 +0100 | [diff] [blame] | 134 | DMI_USERNAME: ${DMI_USERNAME:-cpsuser} |
| 135 | DMI_PASSWORD: ${DMI_PASSWORD:-cpsr0cks!} |
halil.cakal | 1340c57 | 2023-04-12 15:19:45 +0100 | [diff] [blame] | 136 | KAFKA_BOOTSTRAP_SERVER: kafka:29092 |
JosephKeenan | f31c7f8 | 2022-05-24 18:59:25 +0100 | [diff] [blame] | 137 | restart: unless-stopped |
ToineSiebelink | b2c8bc6 | 2023-02-07 10:30:03 +0000 | [diff] [blame] | 138 | profiles: |
| 139 | - dmi-service |
| 140 | |
sourabh_sourabh | 7cda5e9 | 2023-07-05 00:56:05 +0100 | [diff] [blame] | 141 | ncmp-dmi-plugin-demo-and-csit-stub: |
| 142 | container_name: ncmp-dmi-plugin-demo-and-csit-stub |
| 143 | image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/dmi-plugin-demo-and-csit-stub:${DMI_DEMO_STUB_VERSION:-latest} |
ToineSiebelink | b2c8bc6 | 2023-02-07 10:30:03 +0000 | [diff] [blame] | 144 | ports: |
sourabh_sourabh | 7cda5e9 | 2023-07-05 00:56:05 +0100 | [diff] [blame] | 145 | - ${DMI_DEMO_STUB_PORT:-8784}:8092 |
| 146 | environment: |
halil.cakal | 1340c57 | 2023-04-12 15:19:45 +0100 | [diff] [blame] | 147 | KAFKA_BOOTSTRAP_SERVER: kafka:29092 |
sourabh_sourabh | 7cda5e9 | 2023-07-05 00:56:05 +0100 | [diff] [blame] | 148 | NCMP_CONSUMER_GROUP_ID: ncmp-group |
| 149 | NCMP_ASYNC_M2M_TOPIC: ncmp-async-m2m |
danielhanrahan | 156ae0b | 2024-10-18 12:38:12 +0100 | [diff] [blame] | 150 | MODULE_INITIAL_PROCESSING_DELAY_MS: 120000 |
JvD_Ericsson | 1516fa0 | 2024-01-31 13:47:28 +0000 | [diff] [blame] | 151 | MODULE_REFERENCES_DELAY_MS: 100 |
| 152 | MODULE_RESOURCES_DELAY_MS: 1000 |
halil.cakal | a9ee0ab | 2024-07-16 13:53:05 +0100 | [diff] [blame] | 153 | READ_DATA_FOR_CM_HANDLE_DELAY_MS: 300 |
| 154 | WRITE_DATA_FOR_CM_HANDLE_DELAY_MS: 670 |
ToineSiebelink | b2c8bc6 | 2023-02-07 10:30:03 +0000 | [diff] [blame] | 155 | restart: unless-stopped |
| 156 | profiles: |
| 157 | - dmi-stub |
sourabh_sourabh | 7cda5e9 | 2023-07-05 00:56:05 +0100 | [diff] [blame] | 158 | - dmi-service |
emaclee | f6f16f5 | 2023-01-25 12:18:15 +0000 | [diff] [blame] | 159 | |
ToineSiebelink | d7914bc | 2024-07-04 15:15:36 +0100 | [diff] [blame] | 160 | policy-executor-stub: |
| 161 | container_name: policy-executor-stub |
| 162 | image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/policy-executor-stub:latest |
| 163 | ports: |
ToineSiebelink | 6191d41 | 2024-09-16 15:42:30 +0100 | [diff] [blame] | 164 | - 8785:8093 |
ToineSiebelink | d7914bc | 2024-07-04 15:15:36 +0100 | [diff] [blame] | 165 | restart: unless-stopped |
| 166 | profiles: |
| 167 | - policy-executor-stub |
| 168 | |
ToineSiebelink | b2c8bc6 | 2023-02-07 10:30:03 +0000 | [diff] [blame] | 169 | prometheus: |
danielhanrahan | fe22688 | 2024-08-23 13:29:11 +0100 | [diff] [blame] | 170 | container_name: prometheus |
ToineSiebelink | b2c8bc6 | 2023-02-07 10:30:03 +0000 | [diff] [blame] | 171 | image: prom/prometheus:latest |
| 172 | ports: |
| 173 | - 9090:9090 |
| 174 | restart: always |
| 175 | volumes: |
danielhanrahan | fe22688 | 2024-08-23 13:29:11 +0100 | [diff] [blame] | 176 | - ./config/prometheus.yml:/etc/prometheus/prometheus.yml |
ToineSiebelink | b2c8bc6 | 2023-02-07 10:30:03 +0000 | [diff] [blame] | 177 | profiles: |
| 178 | - monitoring |
| 179 | |
| 180 | grafana: |
| 181 | image: grafana/grafana-oss:latest |
| 182 | user: "" |
danielhanrahan | fe22688 | 2024-08-23 13:29:11 +0100 | [diff] [blame] | 183 | container_name: grafana |
ToineSiebelink | b2c8bc6 | 2023-02-07 10:30:03 +0000 | [diff] [blame] | 184 | depends_on: |
| 185 | prometheus: |
| 186 | condition: service_started |
| 187 | ports: |
| 188 | - 3000:3000 |
| 189 | volumes: |
danielhanrahan | fe22688 | 2024-08-23 13:29:11 +0100 | [diff] [blame] | 190 | - ./config/grafana/provisioning/:/etc/grafana/provisioning/ |
| 191 | - ./config/grafana/jvm-micrometer-dashboard.json:/var/lib/grafana/dashboards/jvm-micrometer-dashboard.json |
ToineSiebelink | b2c8bc6 | 2023-02-07 10:30:03 +0000 | [diff] [blame] | 192 | - grafana:/var/lib/grafana |
| 193 | environment: |
| 194 | - GF_SECURITY_ADMIN_PASSWORD=admin |
| 195 | - GF_SERVER_DOMAIN:localhost |
| 196 | profiles: |
| 197 | - monitoring |
| 198 | |
halil.cakal | 65b870b | 2024-07-25 11:12:29 +0100 | [diff] [blame] | 199 | kafka-ui: |
| 200 | container_name: kafka-ui |
| 201 | image: provectuslabs/kafka-ui:latest |
| 202 | ports: |
| 203 | - 8089:8080 |
| 204 | environment: |
| 205 | DYNAMIC_CONFIG_ENABLED: 'true' |
| 206 | KAFKA_CLUSTERS_0_NAME: 'cps-kafka-local' |
| 207 | KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS: kafka:29092 |
| 208 | profiles: |
| 209 | - monitoring |
| 210 | |
sourabh_sourabh | e2527ea | 2024-07-19 17:27:54 +0100 | [diff] [blame] | 211 | jaeger-service: |
| 212 | container_name: jaeger-service |
| 213 | image: jaegertracing/all-in-one:latest |
| 214 | ports: |
| 215 | - 16686:16686 |
| 216 | restart: unless-stopped |
| 217 | profiles: |
| 218 | - tracing |
| 219 | |
ToineSiebelink | b2c8bc6 | 2023-02-07 10:30:03 +0000 | [diff] [blame] | 220 | volumes: |
| 221 | grafana: |