You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Added support for loading dashboards from a relative URL in standalone mode
* Hotfix for broken demo dashboard
* Bump to 2.0.15. Added option to replace dashboard parameters in Markdown and iFrame strings
* added html to image to lib
* W.I.P. on downloading reports/dashboard as image
* Added button to download entire dashboard as an image
* Updated release notes for 2.0.15
* Dockerfile - Configuration through env variables at runtime (#125)
* Configuration throug env variables
- Env variables can now be used to define the contents of config.json (when the container starts)
- Added tips for setting up single sign on
* Cleanup of Dockerfile and README
* Removed temporary files
* Bumped version number
Co-authored-by: Håkan Löfqvist <[email protected]>
* Updated release notes
* Updated README on Docker deployments
Co-authored-by: Håkan Löfqvist <[email protected]>
docker run -it --rm -p 5005:5005 nielsdejong/neodash
24
24
```
25
25
26
+
> Windows users may need to prefix the `docker run` command with `winpty`.
27
+
28
+
26
29
## Run & Build using npm
27
30
NeoDash is built with React. You'll need `npm` installed to run the web app.
28
31
@@ -52,15 +55,18 @@ Make sure you have a recent version of `docker` installed to build the multi-sta
52
55
53
56
On Unix (Mac/Linux) systems:
54
57
```
55
-
$ ./scripts/docker-build-run-unix.bash
58
+
dockerbuild . -t neodash
56
59
```
57
60
58
-
If you use Windows, you should have installed WSL. In WSL, you can run the script as follows:
61
+
If you use Windows, you might need to prefix the command with `winpty`:
59
62
```
60
-
$ ./scripts/docker-build-run-windows.bash
63
+
winpty dockerbuild . -t neodash
61
64
```
62
-
Then visit `http://localhost:5005` in your browser.
63
65
66
+
After building, you can run the image with:
67
+
```
68
+
docker run -it --rm -p 5005:5005 neodash
69
+
```
64
70
65
71
## Run in standalone mode
66
72
NeoDash can be deployed in a 'standalone mode' for dashboard viewers. This mode will:
@@ -72,9 +78,52 @@ The diagram below illustrates how NeoDash standalone mode can be deployed next t
72
78
73
79

74
80
75
-
You can configure an instance to run as standalone by changing the variables in `scripts/docker-build-run-unix.bash`, or, if you're not using docker, directly modifying `public/config.json`. Note that the editor mode is determined at runtime by the React app, and *not* at build time. You therefore do not need to (re-)build the React application, just the image.
81
+
### Option 1 - Standard Deployment (Non-Docker)
82
+
First, build NeoDash as described above. Then, you'll have a `dist` directory that you can deploy to a web server.
83
+
84
+
To configure the app to run in standalone mode, you'll need to edit `dist/config.json` and change the `standalone` property to `true`.
85
+
The other variables inside `config.json` should also be configured to match the hostname, port and database name of your Neo4j instance.
86
+
87
+
As `config.json` gets picked up at runtime by the application, users viewing the application will now access the dashboard in standalone mode.
88
+
89
+
### Option 2 - Docker Deployment
90
+
You can configure the app to run in standalone by passing environment variables to Docker:
91
+
```
92
+
docker run -it --rm -p 5005:5005 \
93
+
-e ssoEnabled=false \
94
+
-e ssoDiscoveryUrl="https://example.com" \
95
+
-e standalone=true \
96
+
-e standaloneProtocol="neo4j" \
97
+
-e standaloneHost="localhost" \
98
+
-e standalonePort="7687" \
99
+
-e standaloneDatabase="neo4j" \
100
+
-e standaloneDashboardName="My Dashboard" \
101
+
-e standaloneDashboardDatabase="dashboards" \
102
+
nielsdejong/neodash
103
+
```
104
+
105
+
106
+
> Alternatively, environment variables from docker compose or a kubernetes deployment can also be used.
107
+
108
+
109
+
## Auth Provider (SSO)
110
+
111
+
To set up NeoDash to use an external identiy provider, you can add a /auth_provider resource to nginx (in `/conf/default.conf`):
112
+
113
+
```
114
+
location /auth_provider {
115
+
default_type application/json;
116
+
return 200 '{
117
+
"auth_config" : {
118
+
"oidc_providers" : [ ... ]
119
+
}
120
+
}';
121
+
}
122
+
```
123
+
124
+
For basic deployments it might suffice to route requests to `/auth_provider` on the https port of the neo4j database.
76
125
77
-
## Extending NeoDash
126
+
## Extending NeoDash
78
127
There are two categories of extensions to NeoDash you can build:
0 commit comments