Cloud native motion detection microservice
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

84 lines
2.0 KiB

version: '3.7'
# All keys here are for dev instance only, do not put prod keys here
x-common: &common
AWS_ACCESS_KEY_ID: camdetect
AWS_SECRET_ACCESS_KEY: 2mSI6HdbJ8
ME_CONFIG_MONGODB_ENABLE_ADMIN: 'true'
ME_CONFIG_MONGODB_SERVER: '127.0.0.1'
ME_CONFIG_MONGODB_AUTH_DATABASE: admin
MINIO_ACCESS_KEY: camdetect
MINIO_SECRET_KEY: 2mSI6HdbJ8
MINIO_DEFAULT_BUCKETS: camdetect
MINIO_URI: 'http://camdetect:2mSI6HdbJ8@127.0.0.1:9000/camdetect'
S3_ENDPOINT_URL: http://127.0.0.1:9000
MINIO_DEFAULT_BUCKETS: camdetect
MINIO_CONSOLE_PORT_NUMBER: 9001
MJPEGSTREAMER_CREDENTIALS: user:123456
SOURCE_NAME: dummy
services:
camdetect:
restart: always
network_mode: host
build:
context: .
entrypoint: /app/camdetect.py
command: http://user:123456@127.0.0.1:8080?action=stream
environment: *common
mongoexpress:
restart: always
image: mongo-express
network_mode: host
environment: *common
logging:
driver: none
mongo:
network_mode: host
image: mongo:latest
volumes:
- ./mongo-init.sh:/docker-entrypoint-initdb.d/mongo-init.sh:ro
command: mongod --replSet rs0 --bind_ip 127.0.0.1
logging:
driver: none
prometheus:
network_mode: host
image: prom/prometheus:latest
command:
- --config.file=/config/prometheus.yml
volumes:
- ./config:/config:ro
logging:
driver: none
minio:
restart: always
network_mode: host
image: bitnami/minio:latest
environment: *common
logging:
driver: none
mjpg-streamer:
network_mode: host
restart: always
image: kvaps/mjpg-streamer
devices:
- /dev/video0
command: -i "/usr/lib64/input_uvc.so -y -d /dev/video0 -r 1280x720 -f 5" -o "output_http.so -c user:123456"
log-viewer-backend:
restart: always
network_mode: host
build:
context: ./log-viewer/backend
environment: *common
log-viewer-frontend:
restart: always
network_mode: host
build:
context: ./log-viewer/frontend