-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
68 lines (62 loc) · 1.74 KB
/
docker-compose.yml
File metadata and controls
68 lines (62 loc) · 1.74 KB
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
name: rhythm
services:
queue:
# https://hub.docker.com/_/rabbitmq/
# includes web gui ?
image: rabbitmq:3-management
# image: rabbitmq:3
ports:
- 127.0.0.1:5672:5672
- 127.0.0.1:15672:15672
volumes:
- ./db/queue/data/:/var/lib/rabbitmq/
# - ./db/queue/log/:/var/log/rabbitmq/
environment:
- RABBITMQ_DEFAULT_USER=user
- RABBITMQ_DEFAULT_PASS=password
- RABBITMQ_DEFAULT_VHOST=myvhost
mongo:
# https://hub.docker.com/_/mongo
image: mongo:5
ports:
# helpful for using a GUI client like compass for troubleshooting
- 127.0.0.1:27017:27017
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: example
MONGO_INITDB_DATABASE: celery
volumes:
- mongo_data:/data/db
- ./mongo/mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro
# for importing database files
# - ./db/mongodump:/opt/sca/app/mongodump
api:
restart: unless-stopped
build:
context: .
expose:
- 5001
ports:
- 5001:5001
environment:
- PORT=5001
depends_on:
- queue
- mongo
# docker compose run --rm mongobackup
mongobackup:
image: mongo:5
environment:
- MONGO_HOST=${MONGO_HOST}
- MONGO_PORT=${MONGO_PORT}
- MONGO_DB=${MONGO_DB}
- MONGO_AUTH_SOURCE=${MONGO_AUTH_SOURCE}
- MONGO_USER=${MONGO_USER}
- MONGO_PASS=${MONGO_PASS}
- PROJ_NAME=${COMPOSE_PROJECT_NAME}
volumes:
- ./db/backups:/backup
command: >
bash -c 'mongodump --uri="mongodb://$MONGO_USER:$MONGO_PASS@$MONGO_HOST:$MONGO_PORT/$MONGO_DB?authSource=$MONGO_AUTH_SOURCE" --archive=/backup/$$PROJ_NAME.mongo.$(date +%F).gz --gzip'
volumes:
mongo_data: