Permalink
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
383 lines (359 sloc) 9.5 KB
# /*******************************************************************************
# * Copyright 2018 Dell Inc.
# *
# * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
# * in compliance with the License. You may obtain a copy of the License at
# *
# * http://www.apache.org/licenses/LICENSE-2.0
# *
# * Unless required by applicable law or agreed to in writing, software distributed under the License
# * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
# * or implied. See the License for the specific language governing permissions and limitations under
# * the License.
# *
# * @author: Jim White, Dell
# * EdgeX Foundry, California version, 0.6.0
# * added: Jul 2, 2018
# *******************************************************************************/
version: '3'
volumes:
db-data:
log-data:
consul-config:
consul-data:
services:
volume:
image: edgexfoundry/docker-edgex-volume
container_name: edgex-files
networks:
- edgex-network
volumes:
- db-data:/data/db
- log-data:/edgex/logs
- consul-config:/consul/config
- consul-data:/consul/data
consul:
image: consul:1.1.0
ports:
- "8400:8400"
- "8500:8500"
- "8600:8600"
container_name: edgex-core-consul
hostname: edgex-core-consul
networks:
edgex-network:
aliases:
- edgex-core-consul
volumes:
- db-data:/data/db
- log-data:/edgex/logs
- consul-config:/consul/config
- consul-data:/consul/data
depends_on:
- volume
config-seed:
image: edgexfoundry/docker-core-config-seed-go:0.6.0
container_name: edgex-config-seed
hostname: edgex-core-config-seed
networks:
edgex-network:
aliases:
- edgex-core-config-seed
volumes:
- db-data:/data/db
- log-data:/edgex/logs
- consul-config:/consul/config
- consul-data:/consul/data
depends_on:
- volume
- consul
mongo:
image: edgexfoundry/docker-edgex-mongo:0.6.0
ports:
- "27017:27017"
container_name: edgex-mongo
hostname: edgex-mongo
networks:
- edgex-network
volumes:
- db-data:/data/db
- log-data:/edgex/logs
- consul-config:/consul/config
- consul-data:/consul/data
depends_on:
- volume
logging:
image: edgexfoundry/docker-support-logging-go:0.6.0
ports:
- "48061:48061"
container_name: edgex-support-logging
hostname: edgex-support-logging
networks:
- edgex-network
volumes:
- db-data:/data/db
- log-data:/edgex/logs
- consul-config:/consul/config
- consul-data:/consul/data
depends_on:
- config-seed
- mongo
- volume
notifications:
image: edgexfoundry/docker-support-notifications:0.6.0
ports:
- "48060:48060"
container_name: edgex-support-notifications
hostname: edgex-support-notifications
networks:
- edgex-network
volumes:
- db-data:/data/db
- log-data:/edgex/logs
- consul-config:/consul/config
- consul-data:/consul/data
depends_on:
- logging
metadata:
image: edgexfoundry/docker-core-metadata-go:0.6.0
ports:
- "48081:48081"
container_name: edgex-core-metadata
hostname: edgex-core-metadata
networks:
- edgex-network
volumes:
- db-data:/data/db
- log-data:/edgex/logs
- consul-config:/consul/config
- consul-data:/consul/data
depends_on:
- logging
data:
image: edgexfoundry/docker-core-data-go:0.6.0
ports:
- "48080:48080"
- "5563:5563"
container_name: edgex-core-data
hostname: edgex-core-data
networks:
- edgex-network
volumes:
- db-data:/data/db
- log-data:/edgex/logs
- consul-config:/consul/config
- consul-data:/consul/data
depends_on:
- logging
command:
image: edgexfoundry/docker-core-command-go:0.6.0
ports:
- "48082:48082"
container_name: edgex-core-command
hostname: edgex-core-command
networks:
- edgex-network
volumes:
- db-data:/data/db
- log-data:/edgex/logs
- consul-config:/consul/config
- consul-data:/consul/data
depends_on:
- metadata
# scheduler container does not come up on Consul - bug fix in the works.
scheduler:
image: edgexfoundry/docker-support-scheduler:0.6.0
ports:
- "48085:48085"
container_name: edgex-support-scheduler
hostname: edgex-support-scheduler
networks:
- edgex-network
volumes:
- db-data:/data/db
- log-data:/edgex/logs
- consul-config:/consul/config
- consul-data:/consul/data
depends_on:
- metadata
export-client:
image: edgexfoundry/docker-export-client-go:0.6.0
ports:
- "48071:48071"
container_name: edgex-export-client
hostname: edgex-export-client
networks:
- edgex-network
volumes:
- db-data:/data/db
- log-data:/edgex/logs
- consul-config:/consul/config
- consul-data:/consul/data
depends_on:
- data
environment:
- EXPORT_CLIENT_MONGO_URL=edgex-mongo
- EXPORT_CLIENT_DISTRO_HOST=export-distro
- EXPORT_CLIENT_CONSUL_HOST=edgex-config-seed
export-distro:
image: edgexfoundry/docker-export-distro-go:0.6.0
ports:
- "48070:48070"
container_name: edgex-export-distro
hostname: edgex-export-distro
networks:
- edgex-network
volumes:
- db-data:/data/db
- log-data:/edgex/logs
- consul-config:/consul/config
- consul-data:/consul/data
depends_on:
- export-client
environment:
- EXPORT_DISTRO_CLIENT_HOST=export-client
- EXPORT_DISTRO_DATA_HOST=edgex-core-data
- EXPORT_DISTRO_CONSUL_HOST=edgex-config-seed
- EXPORT_DISTRO_MQTTS_CERT_FILE=none
- EXPORT_DISTRO_MQTTS_KEY_FILE=none
rulesengine:
image: edgexfoundry/docker-support-rulesengine:0.6.0
ports:
- "48075:48075"
container_name: edgex-support-rulesengine
hostname: edgex-support-rulesengine
networks:
- edgex-network
volumes:
- db-data:/data/db
- log-data:/edgex/logs
- consul-config:/consul/config
- consul-data:/consul/data
depends_on:
- export-distro
#################################################################
# Device Services
#################################################################
device-virtual:
image: edgexfoundry/docker-device-virtual:0.6.0
ports:
- "49990:49990"
container_name: edgex-device-virtual
hostname: edgex-device-virtual
networks:
- edgex-network
volumes:
- db-data:/data/db
- log-data:/edgex/logs
- consul-config:/consul/config
- consul-data:/consul/data
depends_on:
- data
- command
# device-bluetooth:
# image: edgexfoundry/docker-device-bluetooth:0.6.0
# ports:
# - "49988:49988"
# - "5000:5000"
# container_name: edgex-device-bluetooth
# hostname: edgex-device-bluetooth
# privileged: true
# network_mode: "host"
# cap_add:
# - NET_ADMIN
# # networks:
# # - edgex-network
# volumes:
# - db-data:/data/db
# - log-data:/edgex/logs
# - consul-config:/consul/config
# - consul-data:/consul/data
# depends_on:
# - data
# - command
# device-snmp:
# image: edgexfoundry/docker-device-snmp:0.6.0
# ports:
# - "49989:49989"
# container_name: edgex-device-snmp
# hostname: edgex-device-snmp
# networks:
# - edgex-network
# volumes:
# - db-data:/data/db
# - log-data:/edgex/logs
# - consul-config:/consul/config
# - consul-data:/consul/data
# depends_on:
# - data
# - command
# device-modbus:
# image: edgexfoundry/docker-device-modbus:0.6.0
# ports:
# - "49991:49991"
# container_name: edgex-device-modbus
# networks:
# - edgex-network
# volumes:
# - db-data:/data/db
# - log-data:/edgex/logs
# - consul-config:/consul/config
# - consul-data:/consul/data
# privileged: true
# depends_on:
# - data
# - command
# device-fischertechnik:
# image: edgexfoundry/docker-device-fischertechnik:0.6.0
# ports:
# - "49985:49985"
# container_name: edgex-device-fischertechnik
# networks:
# - edgex-network
# volumes:
# - db-data:/data/db
# - log-data:/edgex/logs
# - consul-config:/consul/config
# - consul-data:/consul/data
# privileged: true
# depends_on:
# - data
# - command
# device-bacnet:
# image: edgexfoundry/docker-device-bacnet:0.6.0
# ports:
# - "49986:49986"
# - "5002:5002"
# container_name: edgex-device-bacnet
# hostname: edgex-device-bacnet
# networks:
# - edgex-network
# volumes:
# - db-data:/data/db
# - log-data:/edgex/logs
# - consul-config:/consul/config
# - consul-data:/consul/data
# depends_on:
# - data
# - command
# device-mqtt:
# image: edgexfoundry/docker-device-mqtt:0.6.0
# ports:
# - "49982:49982"
# - "14377:14377"
# container_name: edgex-device-mqtt
# hostname: edgex-device-mqtt
# networks:
# - edgex-network
# volumes:
# - db-data:/data/db
# - log-data:/edgex/logs
# - consul-config:/consul/config
# - consul-data:/consul/data
# depends_on:
# - data
# - command
networks:
edgex-network:
driver: "bridge"
...