forked from broadinstitute/seqr
-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yml
124 lines (117 loc) · 3.8 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
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
version: '2.4'
services:
postgres:
image: postgres:12.6
command: postgres -c listen_addresses='*'
environment:
- PGPORT=5433
- POSTGRES_PASSWORD=docker-compose-postgres-password
volumes:
- ./data/postgres:/var/lib/postgresql/data
healthcheck:
test: pg_isready -h postgres -U postgres
interval: 5s
timeout: 10s
retries: 100
redis:
image: gcr.io/seqr-project/redis:gcloud-prod
healthcheck:
test: redis-cli ping
interval: 3s
timeout: 5s
retries: 100
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.16.3
volumes:
- /mnt/hpf/data/elasticsearch:/usr/share/elasticsearch/data
container_name: elasticsearch
environment:
- http.host=0.0.0.0
- discovery.type=single-node
- cluster.routing.allocation.disk.threshold_enabled=false
healthcheck:
test: bash -c "curl -s elasticsearch:9200/_cat/health | grep green"
interval: 3s
timeout: 5s
retries: 100
ports:
- 9200:9200
# kibana:
# image: docker.elastic.co/kibana/kibana:7.16.3
# environment:
# - ELASTICSEARCH_HOSTS=http://elasticsearch:9200
# depends_on:
# elasticsearch:
# condition: service_healthy
# healthcheck:
# test: bash -c "curl -s kibana:5601 | grep kibana"
# interval: 3s
# timeout: 5s
# retries: 100
seqr:
build: .
image: ccm-seqr:dev
volumes:
- /mnt/hpf/bam_files:/readviz
# - ./data/readviz:/readviz
- /mnt/hpf/data/seqr_static_files:/seqr_static_files
- ./settings.py:/seqr/settings.py
- ./gunicorn/gunicorn_config.py:/seqr/gunicorn_config.py
- ./logs/django:/var/log/django
- ./logs/gunicorn:/var/log/gunicorn
ports:
- 8000:8000
environment:
- BASE_URL=https://seqr.ccm.sickkids.ca
- SEQR_GIT_BRANCH=dev
- PYTHONPATH=/seqr
- STATIC_MEDIA_DIR=/seqr_static_files
- POSTGRES_SERVICE_HOSTNAME=postgres
- POSTGRES_SERVICE_PORT=5433
- POSTGRES_PASSWORD=docker-compose-postgres-password
- ELASTICSEARCH_SERVICE_HOSTNAME=elasticsearch
- REDIS_SERVICE_HOSTNAME=redis
- KIBANA_SERVICE_HOSTNAME=kibana
- PGHOST=postgres
- PGPORT=5433
- PGUSER=postgres
- GUNICORN_WORKER_THREADS=4
- ANALYST_USER_GROUP=analyst
depends_on:
postgres:
condition: service_healthy
elasticsearch:
condition: service_healthy
redis:
condition: service_healthy
healthcheck:
test: bash -c "curl -s 'http://localhost:8000' | grep html"
pipeline-runner:
image: gcr.io/seqr-project/pipeline-runner:20220526_130649
volumes:
- /mnt/hpf/data/seqr-reference-data:/seqr-reference-data
- /mnt/hpf/data/vep_data:/vep_data
- /mnt/hpf/data/input_vcfs:/input_vcfs
- ./pipeline_runner/download_reference_data.sh:/usr/local/bin/download_reference_data.sh
- ./pipeline_runner/ensembl-vep-release-104:/ensembl-vep-release-104
- ./pipeline_runner/entrypoint.sh:/entrypoint.sh
- ./pipeline_runner/update_clinvar_matrix_table.sh:/usr/local/bin/update_clinvar_matrix_table.sh
- ./pipeline_runner/update_combined_reference_data.sh:/usr/local/bin/update_combined_reference_data.sh
- ./pipeline_runner/vep_configs/vep-GRCh37-loftee.json:/vep_configs/vep-GRCh37-loftee.json
- ./pipeline_runner/vep_configs/vep-GRCh38-loftee.json:/vep_configs/vep-GRCh38-loftee.json
- ~/.config:/root/.config
depends_on:
elasticsearch:
condition: service_healthy
nginx:
image: nginx
ports:
- 80:80
- 443:443
depends_on:
seqr:
condition: service_healthy
volumes:
- ./nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf
- ./nginx/certs:/etc/nginx/certs
- ./logs/nginx:/var/log/nginx