d53b85f98d3c4c299da3f57c9ee6c283d399d067
[ccsdk/cds.git] / ms / blueprintsprocessor / application / src / main / dc / docker-compose-cluster.yaml
1 version: '3.7'
2
3 services:
4   db:
5     image: mariadb:latest
6     container_name: ccsdk-mariadb
7     networks:
8       - cds-network
9     ports:
10       - "3306:3306"
11     volumes:
12       - target: /var/lib/mysql
13         type: volume
14         source: mysql-data
15     restart: always
16     environment:
17       MYSQL_ROOT_PASSWORD: sdnctl
18       MYSQL_DATABASE: sdnctl
19       MYSQL_USER: sdnctl
20       MYSQL_PASSWORD: sdnctl
21   nats:
22     image: nats-streaming:latest
23     container_name: nats
24     hostname: nats
25     command: "-cid cds-cluster --auth tokenAuth -store file -dir /opt/app/onap/nats/store --cluster_node_id nats-0"
26     networks:
27       - cds-network
28     ports:
29       - "8222:8222"
30       - "4222:4222"
31     restart: always
32     volumes:
33       - target: /opt/app/onap/nats/store
34         type: volume
35         source: nats-store
36   cds-controller-0:
37     depends_on:
38       - db
39       - nats
40     image: onap/ccsdk-blueprintsprocessor:latest
41     container_name: cds-controller-0
42     hostname: cds-controller-0
43     networks:
44       - cds-network
45     ports:
46       - "8000:8080"
47       - "9111:9111"
48     restart: always
49     volumes:
50       - target: /opt/app/onap/blueprints/deploy
51         type: volume
52         source: blueprints-deploy
53       - target: /opt/app/onap/config
54         type: volume
55         source: controller-config
56     environment:
57       # Same as hostname and container name
58       CLUSTER_ENABLED: "true"
59       CLUSTER_ID: cds-cluster
60       CLUSTER_NODE_ID: cds-controller-0
61       CLUSTER_MEMBERS: cds-controller-0,resource-resolution-0
62       CLUSTER_STORAGE_PATH: /opt/app/onap/config/cluster
63       #CLUSTER_CONFIG_FILE: /opt/app/onap/config/atomix/atomix-multicast.conf
64       NATS_CLUSTER_ID: cds-cluster
65       APP_NAME: cds-controller
66       BUNDLEVERSION: 1.0.0
67       APP_CONFIG_HOME: /opt/app/onap/config
68       STICKYSELECTORKEY:
69       ENVCONTEXT: dev
70   resource-resolution-0:
71     depends_on:
72       - db
73       - nats
74     image: onap/ccsdk-blueprintsprocessor:latest
75     container_name: resource-resolution-0
76     hostname: resource-resolution-0
77     networks:
78       - cds-network
79     ports:
80       - "8001:8080"
81       - "9112:9111"
82     restart: always
83     volumes:
84       - target: /opt/app/onap/blueprints/deploy
85         type: volume
86         source: blueprints-deploy
87       - target: /opt/app/onap/config
88         type: volume
89         source: resource-resolution-config
90     environment:
91       CLUSTER_ENABLED: "true"
92       CLUSTER_ID: cds-cluster
93       CLUSTER_NODE_ID: resource-resolution-0
94       CLUSTER_MEMBERS: cds-controller-0,resource-resolution-0
95       CLUSTER_STORAGE_PATH: /opt/app/onap/config/cluster
96       #CLUSTER_CONFIG_FILE: /opt/app/onap/config/atomix/atomix-multicast.conf
97       NATS_CLUSTER_ID: cds-cluster
98       APP_NAME: resource-resolution
99       BUNDLEVERSION: 1.0.0
100       APP_CONFIG_HOME: /opt/app/onap/config
101       STICKYSELECTORKEY:
102       ENVCONTEXT: dev
103   py-executor-0:
104     depends_on:
105       - db
106       - nats
107     image: onap/ccsdk-py-executor
108     container_name: py-executor-0
109     hostname: py-executor-0
110     networks:
111       - cds-network
112     ports:
113       - "50052:50052"
114     restart: always
115     volumes:
116       - target: /opt/app/onap/blueprints/deploy
117         type: volume
118         source: blueprints-deploy
119     environment:
120       CLUSTER_ID: cds-cluster
121       CLUSTER_NODE_ID: py-executor-0
122       CLUSTER_MEMBERS: cds-controller-0,resource-resolution-0,py-executor-0
123       NATS_CLUSTER_ID: cds-cluster
124       APP_NAME: py-executor
125       BUNDLEVERSION: 1.0.0
126       APP_CONFIG_HOME: /opt/app/onap/config
127       STICKYSELECTORKEY:
128       ENVCONTEXT: dev
129       APP_PORT: 50052
130       AUTH_TYPE: tls-auth
131       LOG_FILE: /opt/app/onap/logs/application.log
132 volumes:
133   mysql-data:
134     driver: local
135     driver_opts:
136       type: none
137       device: /opt/app/cds/mysql/data
138       o: bind
139   nats-store:
140     driver: local
141     driver_opts:
142       type: none
143       device: /opt/app/cds/nats/nats-0/store
144       o: bind
145   blueprints-deploy:
146     driver: local
147     driver_opts:
148       type: none
149       device: /opt/app/cds/blueprints/deploy
150       o: bind
151   controller-config:
152     driver: local
153     driver_opts:
154       type: none
155       device: /opt/app/cds/cds-controller/cds-controller-0/config
156       o: bind
157   resource-resolution-config:
158     driver: local
159     driver_opts:
160       type: none
161       device: /opt/app/cds/resource-resolution/resource-resolution-0/config
162       o: bind
163
164 networks:
165   cds-network:
166     driver: bridge