forked from netreconlab/parse-hipaa
-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yml
69 lines (68 loc) · 3.65 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
version: '3.4'
services:
parse:
image: netreconlab/parse-hipaa:5.0.0-alpha.23
environment:
PARSE_SERVER_APPLICATION_ID: E036A0C5-6829-4B40-9B3B-3E05F6DF32B2
PARSE_SERVER_PRIMARY_KEY: E2466756-93CF-4C05-BA44-FF5D9C34E99F
PARSE_SERVER_READ_ONLY_PRIMARY_KEY: 367F7395-2E3A-46B1-ABA3-963A25D533C3
PARSE_SERVER_ENCRYPTION_KEY: 72F8F23D-FDDB-4792-94AE-72897F0688F9
PARSE_SERVER_OBJECT_ID_SIZE: 32
PARSE_SERVER_DATABASE_URI: postgres://${PG_PARSE_USER}:${PG_PARSE_PASSWORD}@db:5432/${PG_PARSE_DB}
PORT: ${PORT}
PARSE_SERVER_MOUNT_PATH: /api/parse
PARSE_SERVER_URL: http://parse:${PORT}/parse
PARSE_PUBLIC_SERVER_URL: http://localhost:${PORT}/parse
PARSE_SERVER_CLOUD: /parse-server/cloud/main.js
PARSE_SERVER_MOUNT_GRAPHQL: 'true'
PARSE_SET_USER_CLP: 'true' # Default User schema so only authenticated users can access
PARSE_SERVER_ALLOW_CLIENT_CLASS_CREATION: 'false' # Don't allow classes to be created on the client side. You can create classes by using ParseDashboard instead
PARSE_SERVER_ALLOW_CUSTOM_OBJECTID: 'true' # Required to be true for ParseCareKit
PARSE_SERVER_ENABLE_SCHEMA_HOOKS: 'true'
PARSE_SERVER_DIRECT_ACCESS: 'false' # Known to cause crashes when true on single instance of server and not behind public server
PARSE_SERVER_ENABLE_PRIVATE_USERS: 'false'
PARSE_USING_PARSECAREKIT: 'true' # If you are not using ParseCareKit, set this to 'false'
PARSE_VERBOSE: 'false'
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} # Needed for wait-for-postgres.sh
ports:
- ${PORT}:${PORT}
volumes:
- ./scripts/wait-for-postgres.sh:/parse-server/wait-for-postgres.sh
- ./parse/index.js:/parse-server/index.js
- ./parse/AuthKey_U34RY4WCXT.p8:/parse-server/AuthKey_U34RY4WCXT.p8
- ./parse/cloud:/parse-server/cloud
- ./files:/parse-server/files # All files uploaded from users are stored to an ecrypted drive locally for HIPAA compliance
restart: always
command: ["./wait-for-postgres.sh", "db", "node", "index.js"]
depends_on:
- db
dashboard:
image: parseplatform/parse-dashboard:4.0.0
environment:
PARSE_DASHBOARD_TRUST_PROXY: 1
PARSE_DASHBOARD_COOKIE_SESSION_SECRET: AB8849B6-D725-4A75-AA73-AB7103F0363F # This should be constant across all deployments on your system
MOUNT_PATH: /dashboard # This needs to be exactly what you plan it to be behind the proxy, i.e. If you want to access cs.uky.edu/dashboard it should be "/dashboard"
command: parse-dashboard --dev
volumes:
- ./dashboard/parse-dashboard-config.json:/src/Parse-Dashboard/parse-dashboard-config.json
ports:
- 4040:4040
depends_on:
- parse
db:
image: netreconlab/hipaa-postgres:14-3.2
environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
PG_PARSE_USER: ${PG_PARSE_USER}
PG_PARSE_PASSWORD: ${PG_PARSE_PASSWORD}
PG_PARSE_DB: ${PG_PARSE_DB}
restart: always
ports:
- 5432:5432
# Uncomment volumes below to persist postgres data. Make sure to change directory to store data locally
# volumes:
# - /My/Encrypted/Drive/data:/var/lib/postgresql/data #Mount your own drive
# - /My/Encrypted/Drive/archivedir:/var/lib/postgresql/archivedir #Mount your own drive
scan:
image: netreconlab/clamscan:latest
restart: always