-
Notifications
You must be signed in to change notification settings - Fork 995
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
125 lines (118 loc) · 3.72 KB
/
docker-compose.yml
File metadata and controls
125 lines (118 loc) · 3.72 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
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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
#SPDX-License-Identifier: MIT
services:
augur-db:
build:
context: .
dockerfile: ./docker/database/Dockerfile
restart: unless-stopped
environment:
- "POSTGRES_DB=augur"
- "POSTGRES_USER=${AUGUR_DB_USER:-augur}"
- "POSTGRES_PASSWORD=${AUGUR_DB_PASSWORD:-augur}"
- "PGDATA=/var/lib/postgresql/data/pgdata"
ports:
- "${AUGUR_DB_PORT:-5432}:5432"
volumes:
- augurpostgres:/var/lib/postgresql/data
networks:
- augur
redis:
image: "redis:alpine"
networks:
- augur
augur-keyman:
image: augur-keyman
restart: unless-stopped
build:
context: .
dockerfile: ./docker/keyman/Dockerfile
environment:
- REDIS_CONN_STRING=redis://redis:6379
depends_on:
- redis
networks:
- augur
user: 3456:3456 # Run as an arbitrary non-root user
rabbitmq:
image: augur-rabbitmq
build:
context: .
dockerfile: ./docker/rabbitmq/Dockerfile
args:
- RABBIT_MQ_DEFAULT_USER=${AUGUR_RABBITMQ_USERNAME:-augur}
- RABBIT_MQ_DEFAULT_PASSWORD=${AUGUR_RABBITMQ_PASSWORD:-password123}
- RABBIT_MQ_DEFAULT_VHOST=${AUGUR_RABBITMQ_VHOST:-augur_vhost}
networks:
- augur
augur:
image: augur-new:latest
build:
context: .
dockerfile: ./docker/backend/${AUGUR_TARGET:-Dockerfile}
volumes:
- cache:/cache:rw
- config:/config:rw
- facade:/facade:rw
- logs:/logs:rw
restart: unless-stopped
ports:
- 5002:5000
#extra_hosts:
# - "host.docker.internal:host-gateway" #Be able to ping services on the local machine
environment:
- "AUGUR_DB=postgresql+psycopg2://${AUGUR_DB_USER:-augur}:${AUGUR_DB_PASSWORD:-augur}@augur-db:5432/augur"
- "AUGUR_DB_SCHEMA_BUILD=1"
- AUGUR_FACADE_REPO_DIRECTORY=/facade
- "AUGUR_FLAGS=$AUGUR_FLAGS"
- "AUGUR_GITHUB_API_KEY=${AUGUR_GITHUB_API_KEY}"
- "AUGUR_GITLAB_API_KEY=${AUGUR_GITLAB_API_KEY}"
- "AUGUR_GITHUB_USERNAME=${AUGUR_GITHUB_USERNAME}"
- "AUGUR_GITLAB_USERNAME=${AUGUR_GITLAB_USERNAME}"
- REDIS_CONN_STRING=redis://redis:6379
- RABBITMQ_CONN_STRING=amqp://${AUGUR_RABBITMQ_USERNAME:-augur}:${AUGUR_RABBITMQ_PASSWORD:-password123}@rabbitmq:5672/${AUGUR_RABBITMQ_VHOST:-augur_vhost}
- CONFIG_LOCATION=/config/config.yml
- CONFIG_DATADIR=/config
- CACHE_DATADIR=/cache
- CACHE_LOCKDIR=/cache
- CELERYBEAT_SCHEDULE_DB=/tmp/celerybeat-schedule.db
depends_on:
- augur-db
- redis
- augur-keyman
- rabbitmq
networks:
- augur
user: 2345:2345 # Run as an arbitrary non-root user
post_start:
# Make sure the user has access to the volumes
- command: chmod 777 /facade /logs /config /cache
user: root
# Flower is a UI that helps more easily monitor running tasks for celery workers.
# This wont show you every error from the entire augur system, but it should show most of them.
# uncomment the section below to use flower
#flower:
# image: augur-new:latest
# restart: unless-stopped
# command:
# [ "celery", "-A", "augur.tasks.init.celery_app.celery_app", "flower", "--max-tasks=1000000" ]
# ports:
# - 5555:5555
# environment:
# - "AUGUR_DB=postgresql+psycopg2://${AUGUR_DB_USER:-augur}:${AUGUR_DB_PASSWORD:-augur}@augur-db:5432/augur"
# - REDIS_CONN_STRING=redis://redis:6379
# - RABBITMQ_CONN_STRING=amqp://${AUGUR_RABBITMQ_USERNAME:-augur}:${AUGUR_RABBITMQ_PASSWORD:-password123}@rabbitmq:5672/${AUGUR_RABBITMQ_VHOST:-augur_vhost}
# depends_on:
# - augur
# - augur-db
# - redis
# - rabbitmq
# networks:
# - augur
volumes:
augurpostgres:
cache:
config:
facade:
logs:
networks:
augur: