Update smo deployment with ICS
[oam.git] / solution / integration / smo / non-rt-ric / docker-compose.yml
1 #  Copyright (C) 2021 Nordix Foundation. All rights reserved.
2 #  ========================================================================
3 #  Licensed under the Apache License, Version 2.0 (the "License");
4 #  you may not use this file except in compliance with the License.
5 #  You may obtain a copy of the License at
6 #
7 #       http://www.apache.org/licenses/LICENSE-2.0
8 #
9 #  Unless required by applicable law or agreed to in writing, software
10 #  distributed under the License is distributed on an "AS IS" BASIS,
11 #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 #  See the License for the specific language governing permissions and
13 #  limitations under the License.
14 #  ============LICENSE_END=================================================
15 #
16 version: '3'
17
18 networks:
19   nonrtric:
20     driver: bridge
21   oam:
22     external: true
23   smo:
24     external: true
25
26 services:
27   policy-agent:
28     image: "${PMS_IMAGE_BASE}:${PMS_IMAGE_TAG}"
29     container_name: policy-agent
30     networks:
31       - default
32       - oam
33       - smo
34     ports:
35       - 8091:8081
36       - 8433:8433
37     volumes:
38       - ./config/pms/application_configuration.json:/opt/app/policy-agent/data/application_configuration.json:ro
39     # For using own certs instead of the default ones (built into the container),
40     # place them in config/ directory, update the application-policyagent.yaml file, and uncomment the following lines
41     #  - ./config/pms/keystore-policyagent.jks:/opt/app/policy-agent/etc/cert/keystore.jks:ro
42     #  - ./config/pms/truststore-policyagent.jks:/opt/app/policy-agent/etc/cert/truststore.jks:ro
43     #  - ./config/pms/application-policyagent.yaml:/opt/app/policy-agent/config/application.yaml:ro
44
45   a1-sim-OSC:
46     image: "${A1_SIM_IMAGE_BASE}:${A1_SIM_IMAGE_TAG}"
47     container_name: a1-sim-OSC
48     networks:
49       - default
50       - oam
51       - smo
52     ports:
53       - 30001:8085
54       - 30002:8185
55     environment:
56       - A1_VERSION=OSC_2.1.0
57       - REMOTE_HOSTS_LOGGING=1
58       - ALLOW_HTTP=true
59
60   a1-sim-STD:
61     image: "${A1_SIM_IMAGE_BASE}:${A1_SIM_IMAGE_TAG}"
62     container_name: a1-sim-STD
63     networks:
64       - default
65       - oam
66       - smo
67     ports:
68       - 30003:8085
69       - 30004:8185
70     environment:
71       - A1_VERSION=STD_1.1.3
72       - REMOTE_HOSTS_LOGGING=1
73       - ALLOW_HTTP=true
74
75   a1-sim-STD-v2:
76     image: "${A1_SIM_IMAGE_BASE}:${A1_SIM_IMAGE_TAG}"
77     container_name: a1-sim-STD-v2
78     networks:
79       - default
80       - oam
81       - smo
82     ports:
83       - 30005:8085
84       - 30006:8185
85     environment:
86       - A1_VERSION=STD_2.0.0
87       - REMOTE_HOSTS_LOGGING=1
88       - ALLOW_HTTP=true
89
90   r-app:
91     image: "${RAPP_IMAGE_BASE}:${RAPP_IMAGE_TAG}"
92     container_name: r-app
93     networks:
94       - default
95     ports:
96       - 8680:8680
97       - 8633:8633
98
99   policy-control-panel:
100     image: "${CONTROL_PANEL_IMAGE_BASE}:${CONTROL_PANEL_IMAGE_TAG}"
101     container_name: policy-control-panel
102     networks:
103       - default
104     ports:
105       - 8182:8080
106       - 8082:8082
107     volumes:
108       - ./config/control-panel/nginx.conf:/etc/nginx/nginx.conf:ro
109
110   nonrtric-gateway:
111     image: "${NONRTRIC_GATEWAY_IMAGE_BASE}:${NONRTRIC_GATEWAY_IMAGE_TAG}"
112     container_name: nonrtric-gateway
113     networks:
114       - default
115     ports:
116       - 9090:9090
117     volumes:
118       - ./config/nonrtric-gateway/application-nonrtricgateway.yaml:/opt/app/nonrtric-gateway/config/application.yaml:ro
119
120   ics:
121     image: "${ICS_IMAGE_BASE}:${ICS_IMAGE_TAG}"
122     container_name: ics
123     networks:
124       - default
125     ports:
126       - 8083:8083
127       - 8434:8434
128
129   producer:
130     image: "${PRODUCER_IMAGE_BASE}:${PRODUCER_IMAGE_TAG}"
131     container_name: producer
132     networks:
133       - default
134     ports:
135       - 8088:80
136
137   oru-app:
138     image: "${ORU_APP_IMAGE_BASE}:${ORU_APP_IMAGE_TAG}"
139     container_name: oru-app
140     networks:
141       - default
142       - oam
143       - smo
144     environment:
145       - MR-HOST=http://onap-dmaap
146       - MR-PORT=3904
147       - SDNR-HOST=http://sdnr
148       - SDNR-PORT=8181
149       - VERBOSE=on
150     volumes:
151       - ./config/oru-app/o-ru-to-o-du-map.txt:/usr/src/app/o-ru-to-o-du-map.txt:ro
152
153   db:
154     image: "${DB_IMAGE_BASE}:${DB_IMAGE_TAG}"
155     container_name: sdncdb
156     networks:
157       - default
158     ports:
159       - "3306"
160     environment:
161       - MYSQL_ROOT_PASSWORD=itsASecret
162       - MYSQL_ROOT_HOST=%
163       - MYSQL_USER=sdnctl
164       - MYSQL_PASSWORD=gamma
165       - MYSQL_DATABASE=sdnctl
166     logging:
167       driver:   "json-file"
168       options:
169         max-size: "30m"
170         max-file: "5"
171
172   a1controller:
173     image: "${A1CONTROLLER_IMAGE_BASE}:${A1CONTROLLER_IMAGE_TAG}"
174     depends_on :
175       - db
176     container_name: a1controller
177     networks:
178       - default
179     entrypoint: ["/opt/onap/sdnc/bin/startODL.sh"]
180     ports:
181       - 8282:8181
182       - 8444:8443
183     links:
184       - db:dbhost
185       - db:sdnctldb01
186       - db:sdnctldb02
187     environment:
188       - MYSQL_ROOT_PASSWORD=itsASecret
189       - MYSQL_USER=sdnctl
190       - MYSQL_PASSWORD=gamma
191       - MYSQL_DATABASE=sdnctl
192       - SDNC_CONFIG_DIR=/opt/onap/sdnc/data/properties
193       - SDNC_BIN=/opt/onap/sdnc/bin
194       - ODL_CERT_DIR=/tmp
195       - ODL_ADMIN_USERNAME=admin
196       - ODL_ADMIN_PASSWORD=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
197       - ODL_USER=admin
198       - ODL_PASSWORD=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
199       - SDNC_DB_INIT=true
200       - A1_TRUSTSTORE_PASSWORD=a1adapter
201       - AAI_TRUSTSTORE_PASSWORD=changeit
202     logging:
203       driver:   "json-file"
204       options:
205         max-size: "30m"
206         max-file: "5"