-
Notifications
You must be signed in to change notification settings - Fork 9
/
docker-compose.yaml
94 lines (83 loc) · 2.96 KB
/
docker-compose.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
version: '3'
#
# docker-compose.yaml
# Simple compose file for running the Python services in Docker along with other containers comprising the
# KillrVideo.
# For more complex configuration options including metrics, external volumes, OpsCenter,
# etc., see https://github.com/KillrVideo/killrvideo-docker-common
#
# Note: the default configuration here uses the LATEST version of the killrvideo-python
# Docker image, which can be built using scripts/docker_build.sh.
#
services:
web: # Web Interface
image: killrvideo/killrvideo-web:3.0.1
ports:
- "3000:3000" # Exposes port to be available externally
depends_on:
- backend # Needs Backend to be running
environment:
KILLRVIDEO_LOGGING_LEVEL: debug # More logging
# Service implementation - use docker-compose-backend-external.yaml if running services in IDE
backend:
image: killrvideo/killrvideo-python
ports:
- "50101:50101" # Exposes port to be available.
depends_on:
- dse # Needs DSE to be running
- kafka
environment:
KILLRVIDEO_LOGGING_LEVEL: debug # More logging
# Datastax Studio provides convenient web interface to work directly with DataStax Enterprise
studio:
image: datastax/dse-studio:6.7.0
ports:
- "9091:9091" # Exposes port to be available externally
depends_on:
- dse # Needs DSE to be running
environment:
DS_LICENSE: accept
# DataStax Enterprise Database
dse:
image: datastax/dse-server:6.7.4
command: [ -s -g ] # Run with Search and Graph capabilities enabled
ports: # Exposes ports to be available.
- "9042:9042" # Exposes DSE port
- "8983:8983" # Exposes DSE Search port
- "8182:8182" # Exposes DSE Graph port
environment:
DS_LICENSE: accept # Accept licence on start
cap_add:
- IPC_LOCK # Allow DSE to lock memory with mlock
ulimits:
memlock: -1
# One-Time Bootstrap Container, configures DSE to have required keyspaces etc.
dse-config:
image: killrvideo/killrvideo-dse-config:3.0.0
depends_on:
- dse # Needs DSE to be running
# Sample Data Generator, imitates behaviour of users on the killrVideo website.
# Adds comments and rates videos, upload new videos and so on.
generator:
image: killrvideo/killrvideo-generator:3.0.2
depends_on:
- backend # Needs Backend to be running
environment:
KILLRVIDEO_LOGGING_LEVEL: debug # More logging
# Ensure consistency in Kafka World
zookeeper:
image: wurstmeister/zookeeper
ports:
- 2181:2181
# Start a Kafka Broker for Killrvideo
kafka:
image: wurstmeister/kafka
depends_on:
- zookeeper
environment:
KAFKA_LISTENERS: PLAINTEXT://:9092
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_CREATE_TOPICS: "topic-kv-videoCreation:1:1,topic-kv-userCreation:1:1,topic-kv-videoRating:1:1,topic-kv-commentCreation:1:1"
ports:
- 9092:9092