2929fd3ad1915b34273dc1f8b231bb626edb713e
[oam.git] / solution / integration / smo / oam / docker-compose.yml
1 ################################################################################
2 # Copyright 2021 highstreet technologies GmbH
3 #
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
7 #
8 #     http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15 #
16 version: '3.8'
17 services:
18   sdnc-web:
19     image: ${SDNC_WEB_IMAGE}
20     container_name: sdnc-web
21     ports: 
22       - ${SDNC_WEB_PORT}:${SDNC_WEB_PORT}
23     environment: 
24       - ENABLE_OAUTH=true
25       - WEBPROTOCOL=HTTPS
26       - WEBPORT=${SDNC_WEB_PORT}
27       - SDNRPROTOCOL=http
28       - SDNRHOST=sdnr
29       - SDNRPORT=${SDNC_REST_PORT}
30       - SSL_CERT_DIR=/opt/app/osaaf/local/certs
31       - SSL_CERTIFICATE=cert.pem
32       - SSL_CERTIFICATE_KEY=key.pem
33       - TOPOURL=http://topology:3001
34       - TILEURL=https://tile.openstreetmap.org
35     volumes:
36       - ./sdnc-web:/opt/app/osaaf/local/certs
37     networks:
38       dmz:
39       smo:
40
41   sdnr:
42     image: ${SDNC_IMAGE}
43     container_name: sdnr
44     ports:
45       - ${SDNC_REST_PORT}:8181
46       - 8101:8101
47       - 6666:6666
48       - 4335:4335
49     environment:
50       - SDNC_CONFIG_DIR=/opt/onap/ccsdk/data/properties
51       - ODL_CERT_DIR=${SDNC_CERT_DIR}
52       - ENABLE_ODL_CLUSTER=false
53       - SDNC_REPLICAS=0
54       - CCSDK_REPLICAS=0
55       - DOMAIN=""
56       - SDNRWT=true
57       - SDNRONLY=true
58       - SDNRINIT=true
59       - SDNRDM=true
60       - SDNRDBURL=http://persistence:9200
61       - A1_ADAPTER_NORTHBOUND=false
62       - ODL_ADMIN_PASSWORD=${ADMIN_PASSWORD}
63       - ENABLE_OAUTH=true
64       - SDNR_NETCONF_CALLHOME_ENABLED=true
65       - JAVA_OPTS=-Xms256m -Xmx4g
66       - IDENTITY_PROVIDER_URL=${IDENTITY_PROVIDER_URL}
67       - SDNC_WEB_URL=https://sdnc-web:${SDNC_WEB_PORT}
68     volumes:
69       - ./sdnr/oauth-aaa-app-config.xml:/opt/opendaylight/current/system/org/opendaylight/aaa/aaa-shiro/0.13.3/aaa-shiro-0.13.3-aaa-app-config.xml
70       - ./sdnr/oauth-provider.config.json:/opt/opendaylight/etc/oauth-provider.config.json
71       - ./sdnr/devicemanager.properties:/opt/opendaylight/etc/devicemanager.properties
72       - ./sdnr/mountpoint-registrar.properties:/opt/opendaylight/etc/mountpoint-registrar.properties
73       - ./sdnr/certs/certs.properties:${SDNC_CERT_DIR}/certs.properties
74       - ./sdnr/certs/keys0.zip:${SDNC_CERT_DIR}/keys0.zip
75     networks:
76       dmz:
77       smo:
78       default:
79         ipv6_address: ${SDNC_OAM_IPv6}
80
81   ves-collector:
82     image: ${VES_COLLECTOR_IMAGE}
83     container_name: ves-collector
84     environment:
85       DMAAPHOST: onap-dmaap
86     ports:
87       - 8080:8080
88       - 8443:8443
89     volumes:
90       - ./ves-collector/collector.properties:/opt/app/VESCollector/etc/collector.properties
91       - ./ves-collector/ves-dmaap-config.json:/opt/app/VESCollector/etc/ves-dmaap-config.json
92       - ./ves-collector/externalRepo:/opt/app/VESCollector/etc/externalRepo
93     networks:
94       smo:
95       default:
96         ipv6_address: ${VES_COLLECTOR_OAM_IPv6}
97
98 networks:
99   dmz:
100     external: true
101   smo:
102     external: true
103   default:
104     driver: bridge
105     name: oam
106     enable_ipv6: true
107     ipam:
108       driver: default
109       config:
110       - subnet:  ${NETWORK_SUBNET_OAM_IPv6}
111         gateway: ${NETWORK_GATEWAY_OAM_IPv6}