-
Notifications
You must be signed in to change notification settings - Fork 238
/
Copy pathdocker-compose.yml
72 lines (66 loc) · 1.53 KB
/
docker-compose.yml
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
version: "3"
networks:
chat:
services:
# Launch the Redis used for syncing messages between copies of the client app
redis:
image: redis
networks:
- chat
ports:
- 6379:6379
# Launch a local version of DynamoDB
dynamodb-local:
networks:
- chat
command: "-jar DynamoDBLocal.jar -inMemory -sharedDb -delayTransientStatuses 0"
image: public.ecr.aws/aws-dynamodb-local/aws-dynamodb-local:1.19.0
ports:
- 8000:8000
# Ephemeral container used for creating the tables in DynamoDB
dynamodb-tables:
depends_on:
- dynamodb-local
networks:
- chat
build: ./deps/dynamodb-tables
environment:
DYNAMODB_ENDPOINT: http://dynamodb-local:8000
AWS_ACCESS_KEY_ID: test
AWS_SECRET_ACCESS_KEY: test
# The actual client application
client:
depends_on:
- redis
- dynamodb-tables
networks:
- chat
build: ./services/socket
environment:
LOCAL: "true"
ENV_NAME: test
REDIS_ENDPOINT: redis://redis:6379
DYNAMODB_ENDPOINT: http://dynamodb-local:8000
USER_TABLE: test_Users
MESSAGE_TABLE: test_Messages
AWS_REGION: test
AWS_ACCESS_KEY_ID: test
AWS_SECRET_ACCESS_KEY: test
ports:
- 3000:3000
web:
networks:
- chat
build: ./services/web
ports:
- 3001:80
# The test suite
test:
depends_on:
- client
networks:
- chat
build: ./services/test-suite
environment:
SELF_URL: http://client:3000
WS_URL: ws://client:3000