MozDef/docker/compose/docker-compose-cloudy-mozde...

285 строки
6.2 KiB
YAML

---
version: '2.3'
services:
nginx:
image: mozdef/mozdef_cognito_proxy:latest
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "10m"
env_file:
- cloudy_mozdef.env
restart: always
depends_on:
- meteor
links:
- "meteor"
ports:
- 80:8000
- 9090:8090
networks:
- default
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost/health"]
interval: 1m30s
timeout: 10s
retries: 10
mongodb:
image: mozdef/mozdef_mongodb:latest
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "10m"
env_file:
- cloudy_mozdef.env
restart: always
command: /usr/bin/mongod --smallfiles --config /etc/mongod.conf
volumes:
- /var/lib/mongodb:/var/lib/mongo
networks:
- default
bootstrap:
image: mozdef/mozdef_bootstrap:latest
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "10m"
env_file:
- cloudy_mozdef.env
command: bash -c 'python initial_setup.py http://elasticsearch:9200 http://kibana:5601'
depends_on:
- base
networks:
- default
# MozDef Specific Containers
base:
image: mozdef/mozdef_base:latest
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "10m"
env_file:
- cloudy_mozdef.env
alertactions:
image: mozdef/mozdef_alertactions:latest
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "10m"
env_file:
- cloudy_mozdef.env
restart: always
command: bash -c 'python alert_actions_worker.py -c alert_actions_worker.conf'
depends_on:
- base
- alerts
- bootstrap
networks:
- default
alerts:
image: mozdef/mozdef_alerts:latest
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "10m"
env_file:
- cloudy_mozdef.env
- rabbitmq.env
volumes:
- /opt/mozdef/docker/compose/mozdef_alerts/files/config.py:/opt/mozdef/envs/mozdef/alerts/lib/config.py
restart: always
command: bash -c 'celery -A lib.tasks worker --loglevel=info --beat'
depends_on:
- base
- bootstrap
networks:
- default
cron:
image: mozdef/mozdef_cron:latest
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "10m"
env_file:
- cloudy_mozdef.env
restart: always
command: bash -c 'cd / && bash launch_cron'
volumes:
- cron:/opt/mozdef/envs/mozdef/cron
- geolite_db:/opt/mozdef/envs/mozdef/data/
depends_on:
- base
- mongodb
networks:
- default
loginput:
image: mozdef/mozdef_loginput:latest
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "10m"
env_file:
- cloudy_mozdef.env
restart: always
command: bash -c 'python index.py -c index.conf'
depends_on:
- base
- bootstrap
ports:
- 8080:8080
networks:
- default
meteor:
image: mozdef/mozdef_meteor:latest
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "10m"
env_file:
- cloudy_mozdef.env
restart: always
command: bash -c 'node bundle/main.js'
depends_on:
- mongodb
- rest
- bootstrap
ports:
- 3000:3000
networks:
- default
rest:
image: mozdef/mozdef_rest:latest
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "10m"
env_file:
- cloudy_mozdef.env
restart: always
command: bash -c 'python index.py -c index.conf'
depends_on:
- base
- mongodb
- bootstrap
networks:
- default
syslog:
image: mozdef/mozdef_syslog:latest
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "10m"
env_file:
- cloudy_mozdef.env
restart: always
command: bash -c '/usr/sbin/syslog-ng --no-caps -F'
depends_on:
- loginput
ports:
- 514:514/udp
- 514:514
networks:
- default
rabbitmq:
image: mozdef/mozdef_rabbitmq:latest
init: true
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "10m"
env_file:
- rabbitmq.env
restart: always
command: rabbitmq-server
ports:
- 5672:5672
- 15672:15672 # Admin interface
volumes:
- rabbitmq:/var/lib/rabbitmq
networks:
- default
mq_eventtask:
image: mozdef/mozdef_mq_worker:latest
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "10m"
env_file:
- cloudy_mozdef.env
restart: always
command: bash -c 'test -e /opt/mozdef/envs/mozdef/data/GeoLite2-City.mmdb && python esworker_eventtask.py -c esworker_eventtask.conf'
scale: 1
depends_on:
- base
- rabbitmq
- loginput
- bootstrap
networks:
- default
volumes:
- geolite_db:/opt/mozdef/envs/mozdef/data/
mq_cloudtrail:
image: mozdef/mozdef_mq_worker:latest
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "10m"
env_file:
- cloudy_mozdef.env
- cloudy_mozdef_mq_cloudtrail.env
restart: always
command: bash -c 'test -e /opt/mozdef/envs/mozdef/data/GeoLite2-City.mmdb && python esworker_cloudtrail.py -c esworker_cloudtrail.conf'
scale: 1
depends_on:
- base
- rabbitmq
- loginput
- bootstrap
networks:
- default
volumes:
- geolite_db:/opt/mozdef/envs/mozdef/data/
mq_sqs:
image: mozdef/mozdef_mq_worker:latest
logging:
driver: "json-file"
options:
max-file: "1"
max-size: "10m"
env_file:
- cloudy_mozdef.env
- cloudy_mozdef_mq_sqs.env
restart: always
command: bash -c 'test -e /opt/mozdef/envs/mozdef/data/GeoLite2-City.mmdb && python esworker_sqs.py -c esworker_sqs.conf'
scale: 1
depends_on:
- base
- rabbitmq
- loginput
- bootstrap
networks:
- default
volumes:
- geolite_db:/opt/mozdef/envs/mozdef/data/
volumes:
cron:
geolite_db:
rabbitmq:
networks:
default: