2020-08-08 23:59:13 +02:00
|
|
|
# Dougal web server
|
|
|
|
|
|
|
|
|
|
Backend server for the user interface
|
|
|
|
|
|
|
|
|
|
## Install
|
|
|
|
|
|
|
|
|
|
Clone / copy this directory to the destination directory and then run
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
npm install
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## Run
|
|
|
|
|
|
|
|
|
|
In production this should be run as a system service, but for development or a one-off run:
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
node index.js
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
or
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
npm start
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
### Options
|
|
|
|
|
|
|
|
|
|
The following environment variables affect the behaviour of the application:
|
|
|
|
|
|
|
|
|
|
* `NODE_ENV`: If `NODE_ENV=test` some output messages are suppressed.
|
|
|
|
|
* `HTTP_PORT`: Port to listen on. Default is 3000.
|
|
|
|
|
* `HTTP_PATH`: Path to prepend to the API routes. Default is null.
|
|
|
|
|
* `DOUGAL_API_CONFIG`: Location of the API configuration file. Default is `$HOME/etc/www/config.json`.
|
|
|
|
|
|
|
|
|
|
The server always listens on 127.0.0.1. Use a proxy like Nginx to expose it to the network.
|
2020-10-23 11:09:08 +02:00
|
|
|
|
|
|
|
|
## Use
|
|
|
|
|
|
|
|
|
|
The API specification may be found under [`./spec`](./spec).
|
|
|
|
|
|
|
|
|
|
Generate the documentation with:
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
./node_modules/.bin/redoc-cli bundle ./spec/openapi.yaml
|
|
|
|
|
```
|