blob: 61afff239c82468a141cb5a3c78e336603f32e2c [file] [log] [blame]
Matt Jeanneret13643e02019-01-30 16:49:03 -05001---
2# Copyright 2018 the original author or authors.
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
16version: '2'
17
18networks:
19 default:
20 driver: bridge
21
22services:
23
24 zookeeper:
25 image: "wurstmeister/zookeeper:latest"
26 environment:
27 SERVICE_2181_NAME: "zookeeper"
28 ports:
29 - 2181:2181
30 networks:
31 - default
32
33
34 kafka:
35 image: "wurstmeister/kafka:2.11-2.0.1"
36 environment:
37 KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://${DOCKER_HOST_IP}:9092
38 KAFKA_LISTENERS: PLAINTEXT://:9092
39 KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
40 KAFKA_AUTO_CREATE_TOPICS_ENABLE: 'true'
41 SERVICE_9092_NAME: "kafka"
42 volumes:
43 - /var/run/docker.sock:/var/run/docker.sock
44 ports:
45 - 9092:9092
46 networks:
47 - default
48
49
50 etcd:
51 image: "quay.io/coreos/etcd:v3.2.9"
52 command: [
53 "etcd",
54 "--name=etcd0",
55 "--advertise-client-urls=http://${DOCKER_HOST_IP}:2379,http://${DOCKER_HOST_IP}:4001",
56 "--listen-client-urls=http://0.0.0.0:2379,http://0.0.0.0:4001",
57 "--initial-advertise-peer-urls=http://${DOCKER_HOST_IP}:2380",
58 "--listen-peer-urls=http://0.0.0.0:2380",
59 "--initial-cluster-token=etcd-cluster-1",
60 "--initial-cluster=etcd0=http://${DOCKER_HOST_IP}:2380",
61 "--initial-cluster-state=new"
62 ]
63 ports:
64 - "2379:2379"
65 - 2380
66 - 4001
67 networks:
68 - default
69
70
71 rw_core:
72 image: voltha-rw-core
73 entrypoint:
74 - /app/rw_core
75 - -kv_store_type=etcd
76 - -kv_store_host=${DOCKER_HOST_IP}
77 - -kv_store_port=2379
78 - -grpc_port=50057
79 - -banner=true
80 - -kafka_adapter_host=${DOCKER_HOST_IP}
81 - -kafka_adapter_port=9092
82 - -kafka_cluster_host=${DOCKER_HOST_IP}
83 - -kafka_cluster_port=9092
84 - -rw_core_topic=rwcore
85 - -kv_store_data_prefix=service/voltha
86 - -in_competing_mode=false
87 - -log_level=0
88 volumes:
89 - "/var/run/docker.sock:/tmp/docker.sock"
90 ports:
91 - 50057:50057
92 networks:
93 - default
94 restart: unless-stopped
95
96
97 cli:
98 image: "${REGISTRY}${REPOSITORY}voltha-cli:latest"
99 logging:
100 driver: "json-file"
101 options:
102 max-size: "10m"
103 max-file: "3"
104 environment:
105 DOCKER_HOST_IP: "${DOCKER_HOST_IP}"
106 entrypoint:
107 - /voltha/python/cli/setup.sh
108 - -g ${DOCKER_HOST_IP}:50057
109 networks:
110 - default
111 ports:
112 - "5022:22"
113
114
115 ofagent:
116 image: "${REGISTRY}${REPOSITORY}voltha-ofagent:latest"
117 logging:
118 driver: "json-file"
119 options:
120 max-size: "10m"
121 max-file: "3"
122 command: [
123 "/ofagent/ofagent/main.py",
124 "--consul=${DOCKER_HOST_IP}:8500",
125 "--controller=${DOCKER_HOST_IP}:6653",
126 "--grpc-endpoint=${DOCKER_HOST_IP}:50057",
127 "--instance-id-is-container-name",
128 "-v"
129 ]
130 volumes:
131 - "/var/run/docker.sock:/tmp/docker.sock"
132 networks:
133 - default
134 restart: unless-stopped
135
136
137 adapter_openolt:
Matt Jeanneretf4d4d352019-02-14 11:26:13 -0500138 image: "${REGISTRY}${REPOSITORY}voltha-openolt-adapter${TAG}"
Matt Jeanneret13643e02019-01-30 16:49:03 -0500139 logging:
140 driver: "json-file"
141 options:
142 max-size: "10m"
143 max-file: "3"
144 command: [
Matt Jeanneretf4d4d352019-02-14 11:26:13 -0500145 "/voltha/adapters/openolt/main.py",
Matt Jeanneret13643e02019-01-30 16:49:03 -0500146 "-v",
147 "--name=openolt",
148 "--kafka_adapter=${DOCKER_HOST_IP}:9092",
149 "--kafka_cluster=${DOCKER_HOST_IP}:9092",
Matt Jeanneretf4d4d352019-02-14 11:26:13 -0500150 "--backend=etcd",
151 "--etcd=${DOCKER_HOST_IP}:2379",
152 "--core_topic=rwcore"
153 ]
154 networks:
155 - default
156 restart: unless-stopped
157
158
159 adapter_openonu:
160 image: "${REGISTRY}${REPOSITORY}voltha-openonu-adapter${TAG}"
161 logging:
162 driver: "json-file"
163 options:
164 max-size: "10m"
165 max-file: "3"
166 command: [
167 "/voltha/adapters/brcm_openomci_onu/main.py",
168 "-v",
Matt Jeanneret0105a1f2019-02-21 09:19:57 -0500169 "--name=brcm_openomci_onu",
Matt Jeanneretf4d4d352019-02-14 11:26:13 -0500170 "--kafka_adapter=${DOCKER_HOST_IP}:9092",
171 "--kafka_cluster=${DOCKER_HOST_IP}:9092",
Matt Jeanneret13643e02019-01-30 16:49:03 -0500172 "--core_topic=rwcore"
173 ]
174 networks:
175 - default
176 restart: unless-stopped