-
Notifications
You must be signed in to change notification settings - Fork 2
/
docker-compose.yml
115 lines (102 loc) · 2.97 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
version: "3.5"
services:
postgresql:
image: postgres:13.3
env_file:
- env.d/postgresql
volumes:
- ./fixtures/postgresql/marsha.sql:/docker-entrypoint-initdb.d/init.sql
grafana:
image: grafana/grafana:10.3.3
ports:
- 3000:3000
user: "${DOCKER_USER:-1000}"
volumes:
- ./etc/grafana/provisioning/dashboards:/etc/grafana/provisioning/dashboards
- ./etc/grafana/provisioning/datasources:/etc/grafana/provisioning/datasources
- ./src/plugins:/var/lib/grafana/plugins/potsie
- ./var/lib/grafana/dashboards:/var/lib/grafana/dashboards
env_file:
- env.d/grafana
depends_on:
- edx_mysql
- elasticsearch
- postgresql
app:
build:
context: .
image: potsie:development
user: "${DOCKER_USER:-1000}"
volumes:
- ./src/dashboards:/app/dashboards
- ./src/plugins:/app/plugins
- ./var/lib/grafana/dashboards:/var/lib/grafana/dashboards
node:
image: node:14
user: "${DOCKER_USER:-1000}"
# We must run node with a /home because yarn tries to write to ~/.yarnrc.
# If the ID of our host user (with which we run the container) does not
# exist in the container (e.g. 1000 exists but 1009 does not exist by
# default), then yarn will try to write to "/.yarnrc" at the root of the
# system and will fail with a permission error.
environment:
- HOME=/tmp
working_dir: /src/plugins
volumes:
- ./src/plugins:/src/plugins
jb:
image: potsie:builder
build:
context: .
target: builder
volumes:
- ./jsonnetfile.json:/go/jsonnetfile.json
- ./jsonnetfile.lock.json:/go/jsonnetfile.lock.json
entrypoint: jb
patch_statements_date:
image: python:3.10
user: "${DOCKER_USER:-1000}"
volumes:
- ./scripts:/scripts
command: python scripts/patch_statements_date.py
users-permissions:
image: fundocker/curl-jq:latest
user: "${DOCKER_USER:-1000}"
volumes:
- ./scripts:/scripts
ralph:
image: fundocker/ralph:3.6.0
user: "${DOCKER_USER:-1000}"
entrypoint: ["ralph"]
environment:
- RALPH_BACKENDS__DATABASE__ES__HOSTS=http://elasticsearch:9200
- RALPH_BACKENDS__DATABASE__ES__INDEX=statements
elasticsearch:
image: elasticsearch:8.2.0
mem_limit: 2g
environment:
discovery.type: single-node
xpack.security.enabled: "false"
ports:
- "9200:9200"
volumes:
- ./scripts/create_es_index.sh:/usr/local/bin/create_es_index.sh
edx_mysql:
image: mariadb:10.3.32
env_file:
- env.d/mysql
volumes:
- ./fixtures/mysql/edxapp.sql:/docker-entrypoint-initdb.d/init.sql
curl:
image: fundocker/curl-jq:latest
entrypoint: /usr/local/bin/curl
hooks:
image: fundocker/curl-jq:latest
env_file:
- env.d/hooks
working_dir: /src/hooks
volumes:
- ./var/lib/grafana/dashboards:/var/lib/grafana/dashboards
- ./src/hooks:/src/hooks
dockerize:
image: jwilder/dockerize