name: rsiot-dev
services:
emqx:
container_name: rsiot-emqx
healthcheck:
test: ["CMD", "/opt/emqx/bin/emqx", "ctl", "status"]
interval: 5s
timeout: 25s
retries: 5
hostname: emqx
image: emqx:5.6.0 ports:
- 1883:1883
- 8083:8083
- 8084:8084
- 8883:8883
- 18083:18083
volumes:
- emqx_volume:/opt/emqx/data
timescaledb:
container_name: rsiot-timescaledb
hostname: timescaledb
image: timescale/timescaledb:2.12.2-pg15
command: postgres
-c config_file=/etc/postgresql/postgresql.conf
-c hba_file=/etc/postgresql/pg_hba.conf
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
ports:
- "5432:5432"
volumes:
- ./rsiot-config-files/timescaledb/postgresql.conf:/etc/postgresql/postgresql.conf
- ./rsiot-config-files/timescaledb/pg_hba.conf:/etc/postgresql/pg_hba.conf
- ./rsiot-config-files/timescaledb/init.sql:/docker-entrypoint-initdb.d/init.sql
httpbin:
container_name: rsiot-httpbin
hostname: httpbin
image: kennethreitz/httpbin
ports:
- "80:80"
websocket-server:
container_name: rsiot-websocket-server
hostname: websocket-server
image: crossbario/autobahn-testsuite
ports:
- "9001:9001"
command: wstest -m broadcastserver -w ws://localhost:9001
modbus-server:
container_name: rsiot-modbus-server
hostname: modbus-server
image: oitc/modbus-server
ports:
- "5020:5020"
volumes:
- ./modbus_server.json:/app/modbus_server.json
redis:
container_name: rsiot-redis
hostname: redis
image: redis/redis-stack:latest
ports:
- "6379:6379" - "8002:8001" volumes:
- redis_data:/data
- ./rsiot-config-files/redis/redis.conf:/redis-stack.conf
surrealdb:
command: start --user root --pass root file:/data/database.db
container_name: rsiot-surrealdb
healthcheck:
test: surreal isready --conn http://localhost:8000
interval: 5s
timeout: 5s
retries: 5
hostname: surrealdb
image: surrealdb/surrealdb:latest
ports:
- "8003:8000"
user: root
volumes:
- surrealdb_data:/data/
influxdb:
container_name: rsiot-influxdb
hostname: influxdb
image: influxdb:2.7.5
ports:
- "8086:8086"
volumes:
- influxdb_data:/var/lib/influxdb2
volumes:
emqx_volume:
name: emqx_volume
influxdb_data:
name: influxdb_data
redis_data:
name: redis_data
surrealdb_data:
name: surrealdb_data