forked from GRIDAPPSD/gridappsd-docker
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yml
133 lines (118 loc) · 4.38 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
125
126
127
128
129
130
131
132
version: '2'
services:
sample_app:
image: gridappsd/sample_app
environment:
GRIDAPPSD_URI: tcp://gridappsd:61613
# GRIDAPPSD_USER: system
# GRIDAPPSD_PASS: manager
depends_on:
- gridappsd
#volumes:
# Change upto the : where you have your git repository on your
# computer. The : delinates between the host (your computer) and
# the container (inside of the container)
#
# In order for the app to be registered with gridappsd a configuration
# file must be mounted or copied to /appconfig
# - $HOME/git/gridappsd-sample-app/sample_app.config:/appconfig
# When debugging apps it is helpful to mount the application over the
# top of where it normally be ran so that changes on the host are immediately
# reflected inside the container.
#
#- $HOME/git/gridappsd-sample-app/:/usr/src/gridappsd-sample
blazegraph:
image: gridappsd/blazegraph${GRIDAPPSD_TAG}
ports:
- 8889:8080
redis:
image: redis:3.2.11-alpine
ports:
- 6379:6379
volumes:
- ./gridappsd/redis/data:/data
entrypoint: redis-server --appendonly yes
mysql:
image: mysql/mysql-server:5.7
ports:
- 3306:3306
environment:
MYSQL_RANDOM_ROOT_PASSWORD: "yes"
MYSQL_PORT: 3306
volumes:
- ./gridappsdmysql:/var/lib/mysql
- ./dumps/gridappsd_mysql_dump.sql:/docker-entrypoint-initdb.d/schema.sql:ro
viz:
image: gridappsd/viz${GRIDAPPSD_TAG}
ports:
- 8080:8082
depends_on:
- gridappsd
gridappsd:
image: gridappsd/gridappsd${GRIDAPPSD_TAG}
ports:
# Each of the following are port mappings from the host into the
# container. The first three are used by GridAPPS-D for the different
# protocols.
- 61613:61613
- 61614:61614
- 61616:61616
# Uncomment to allow debugging on this port
- 8000:8000
# Add debugging to your application via the following port
- 8888:8888
working_dir: /gridappsd
environment:
- PATH=/gridappsd/bin:/gridappsd/lib:/gridappsd/services/fncsgossbridge/service:$PATH
# Debugging is only necessary if you intend to remote debug the GridAPPS-D process iself.
# Turning this on will allow the user to remote debug the gridappsd server on port 8000.
- DEBUG=1
# The following allow applications to be mounted into the container so that
# gridappsd can start them in the correct context.
#
# The format is local_path:container_path where local_path is on the host machine and the
# container_dir is inside the container. The paths can be either a file or a directory. In
# order for gridappsd to recognize it as an application the container path must be inside
# the /gridappsd/applications. For services the container path must be inside /gridappsd/services.
#
# The following assumes you have cloned/downloaded the sample app in a sibling folder of this
# repository. Once uncommenting the three lines below the sample_app will be available in the
# container
#
# volumes:
# - ~/git/gridappsd-sample-app/sample_app:/gridappsd/applications/sample_app
# - ~/git/gridappsd-sample-app/sample_app/sample_app.config:/gridappsd/applications/sample_app.config
depends_on:
- mysql
- blazegraph
- redis
proven:
image: pnnl/proven:latest
ports:
- 18080:8080
environment:
# PROVEN_SERVICES_PORT - Proven service port [18080]
# PROVEN_SWAGGER_HOST_PORT - Host and port value for Swagger (<host>:<port>)
# PROVEN_USE_IDB - Use InfluxDB to save provenance metrics (true | false) [false]
# PROVEN_IDB_URL - InfluxDB URL [http://localhost:8086]
# PROVEN_IDB_DB - InfluxDB Database [proven]
# PROVEN_IDB_RP - InfluxDB retention policy [autogen]
# PROVEN_IDB_USERNAME - InfluxDb username [root]
# PROVEN_IDB_PASSWORD - InfluxDb password [root]
# PROVEN_T3DIR - directory location of triple store [user_home_directory]
####
- PROVEN_SERVICES_PORT=18080
- PROVEN_SWAGGER_HOST_PORT=localhost:18080
- PROVEN_USE_IDB=true
- PROVEN_IDB_URL=http://influxdb:8086
- PROVEN_IDB_DB=proven
- PROVEN_IDB_RP=autogen
- PROVEN_IDB_USERNAME=root
- PROVEN_IDB_PASSWORD=root
- PROVEN_T3DIR=/proven
influxdb:
image: gridappsd/influxdb${GRIDAPPSD_TAG}
environment:
INFLUXDB_DB: "proven"
ports:
- 8086:8086