blob: af23668a3696e323d2d6ff000062657eed8ca293 [file] [log] [blame]
serkant.uluderya79c9a042019-03-14 15:24:48 -07001---
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:
Matt Jeannerete36a7552019-12-13 16:13:48 -050051 image: "quay.io/coreos/etcd:v3.4.1"
serkant.uluderya79c9a042019-03-14 15:24:48 -070052 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 - -log_level=0
89 volumes:
90 - "/var/run/docker.sock:/tmp/docker.sock"
91 ports:
92 - 50057:50057
93 networks:
94 - default
95 restart: unless-stopped
96
97
serkant.uluderya79c9a042019-03-14 15:24:48 -070098 ofagent:
99 image: "${REGISTRY}${REPOSITORY}voltha-ofagent:latest"
100 logging:
101 driver: "json-file"
102 options:
103 max-size: "10m"
104 max-file: "3"
105 command: [
106 "/ofagent/ofagent/main.py",
107 "--consul=${DOCKER_HOST_IP}:8500",
108 "--controller=${DOCKER_HOST_IP}:6653",
109 "--grpc-endpoint=${DOCKER_HOST_IP}:50057",
110 "--instance-id-is-container-name",
111 "-v"
112 ]
113 volumes:
114 - "/var/run/docker.sock:/tmp/docker.sock"
115 networks:
116 - default
117 restart: unless-stopped
118
119 adapter_ponsim_olt:
120 image: "${REGISTRY}${REPOSITORY}voltha-adapter-ponsim-olt${TAG}"
121 logging:
122 driver: "json-file"
123 options:
124 max-size: "10m"
125 max-file: "3"
126 command: [
127 "/voltha/python/adapters/ponsim_olt/main.py",
128 "-v",
129 "--name=ponsim_olt",
130 "--kafka_adapter=${DOCKER_HOST_IP}:9092",
131 "--kafka_cluster=${DOCKER_HOST_IP}:9092",
132 "--core_topic=rwcore"
133 ]
134 networks:
135 - default
136
137 adapter_ponsim_onu:
138 image: "${REGISTRY}${REPOSITORY}voltha-adapter-ponsim-onu${TAG}"
139 logging:
140 driver: "json-file"
141 options:
142 max-size: "10m"
143 max-file: "3"
144 command: [
145 "/voltha/python/adapters/ponsim_onu/main.py",
146 "-v",
147 "--name=ponsim_onu",
148 "--kafka_adapter=${DOCKER_HOST_IP}:9092",
149 "--kafka_cluster=${DOCKER_HOST_IP}:9092",
150 "--core_topic=rwcore"
151 ]
152 networks:
153 - default
154
155 ponsim_olt:
156 image: "${REGISTRY}voltha/voltha-ponsim${TAG}"
157 logging:
158 driver: "json-file"
159 options:
160 max-size: "10m"
161 max-file: "3"
162 entrypoint:
163 - /app/ponsim
164 - -device_type
165 - "OLT"
166 - -onus
167 - "4"
168 - -internal_if
169 - "eth0"
170 - -external_if
171 - "eth0"
172 - -vcore_endpoint
173 - "vcore"
174 - -promiscuous
175 - -verbose
176 ports:
177 - "50060:50060"
178 networks:
179 - default
180
181 ponsim_onu:
182 image: "${REGISTRY}voltha/voltha-ponsim${TAG}"
183 logging:
184 driver: "json-file"
185 options:
186 max-size: "10m"
187 max-file: "3"
188 entrypoint:
189 - /app/ponsim
190 - -device_type
191 - "ONU"
192 - -parent_addr
193 - "ponsim_olt"
194 - -grpc_port
195 - "50061"
196 - -internal_if
197 - "eth0"
198 - -external_if
199 - "lo"
200 - -promiscuous
201 - -verbose
202 ports:
203 - "50061:50061"
204 networks:
205 - default