Clean-up existing docker-compose solutions
[oam.git] / solution / smo / oam / docker-compose.yml
1 # no more versions needed! Compose spec supports all features w/o a version
2 services:
3
4   odlux:
5     image: ${SDNC_WEB_IMAGE}
6     container_name: odlux
7     hostname: odlux
8     environment:
9       - ENABLE_OAUTH=true
10       - WEBPROTOCOL=HTTP
11       - WEBPORT=${SDNC_WEB_PORT}
12       - SDNRPROTOCOL=http
13       - SDNRHOST=sdnr
14       - SDNRPORT=${SDNC_REST_PORT}
15     labels:
16       traefik.enable: true
17       traefik.http.routers.sdnc-web.entrypoints: websecure
18       traefik.http.routers.sdnc-web.rule: Host(`odlux.oam.${SOLUTION_DOMAIN}`)
19       traefik.http.routers.sdnc-web.tls: true
20       traefik.http.services.sdnc-web.loadbalancer.server.port: ${SDNC_WEB_PORT}
21     networks:
22       smo:
23
24   sdnr:
25     image: ${SDNC_IMAGE}
26     container_name: sdnr
27     hostname: sdnr
28     ports:
29       - 6666:6666
30       - 4335:4335
31     environment:
32       - ENABLE_ODL_CLUSTER=false
33       - ENABLE_OAUTH=true
34       - ODL_ADMIN_PASSWORD=${ADMIN_PASSWORD}
35       - SDNC_CONFIG_DIR=/opt/onap/ccsdk/data/properties
36       - SDNC_REPLICAS=0
37       - CCSDK_REPLICAS=0
38       - DOMAIN=""
39       - SDNRWT=true
40       - SDNRONLY=true
41       - SDNRINIT=true
42       - SDNRDM=true
43       - SDNRDBURL=http://persistence:9200
44       - SDNR_NETCONF_CALLHOME_ENABLED=true
45       - A1_ADAPTER_NORTHBOUND=false
46       - JAVA_OPTS=-Xms256m -Xmx4g
47       - IDENTITY_PROVIDER_URL=${IDENTITY_PROVIDER_URL}
48       - SDNC_WEB_URL=https://odlux.oam.${SOLUTION_DOMAIN}
49       - SDNR_VES_COLLECTOR_ENABLED=true
50       - SDNR_VES_COLLECTOR_TLS_ENABLED=false
51       - SDNR_VES_COLLECTOR_TRUST_ALL_CERTS=true
52       - SDNR_VES_COLLECTOR_IP=ves-collector
53       - SDNR_VES_COLLECTOR_PORT=$VES_ENDPOINT_PORT
54       - SDNR_VES_COLLECTOR_VERSION=v7
55       - SDNR_VES_COLLECTOR_REPORTING_ENTITY_NAME=ONAP SDN-R
56       - SDNR_VES_COLLECTOR_EVENTLOG_MSG_DETAIL=LONG
57       - SDNR_VES_COLLECTOR_USERNAME=${VES_ENDPOINT_USERNAME}
58       - SDNR_VES_COLLECTOR_PASSWORD=${VES_ENDPOINT_PASSWORD}
59     volumes:
60       - ./controller/oauth-aaa-app-config.xml:/opt/onap/sdnc/data/oauth-aaa-app-config.xml
61       - ./controller/oauth-provider.config.json:/opt/opendaylight/etc/oauth-provider.config.json
62       - ./controller/devicemanager.properties:/opt/opendaylight/etc/devicemanager.properties
63       - ./controller/mountpoint-registrar.properties:/opt/opendaylight/etc/mountpoint-registrar.properties
64     labels:
65       traefik.enable: true
66       traefik.http.routers.sdnr.entrypoints: websecure
67       traefik.http.routers.sdnr.rule: Host(`controller.oam.${SOLUTION_DOMAIN}`)
68       traefik.http.routers.sdnr.tls: true
69       traefik.http.services.sdnr.loadbalancer.server.port: 8181
70     networks:
71       smo:
72       default:
73         ipv6_address: ${SDNC_OAM_IPv6}
74
75   ves-collector:
76     image: ${VES_COLLECTOR_IMAGE}
77     container_name: ves-collector
78     hostname: ves-collector
79     environment:
80       DMAAPHOST: messages
81     volumes:
82       - ./ves-collector/collector.properties:/opt/app/VESCollector/etc/collector.properties
83       - ./ves-collector/ves-dmaap-config.json:/opt/app/VESCollector/etc/ves-dmaap-config.json
84       - ./ves-collector/externalRepo:/opt/app/VESCollector/etc/externalRepo
85     labels:
86       traefik.enable: true
87       traefik.http.routers.ves.entrypoints: websecure
88       traefik.http.routers.ves.rule: Host(`ves-collector.oam.${SOLUTION_DOMAIN}`)
89       traefik.http.routers.ves.tls: true
90       traefik.http.services.ves.loadbalancer.server.port: ${VES_ENDPOINT_PORT}
91     networks:
92       smo:
93
94 networks:
95   smo:
96     external: true
97   default:
98     driver: bridge
99     name: oam
100     enable_ipv6: true
101     ipam:
102       driver: default
103       config:
104       - subnet:  "${NETWORK_SUBNET_OAM_IPv6}"
105         gateway: "${NETWORK_GATEWAY_OAM_IPv6}"