Newer
Older
FORESTIER Fabien
committed
# Admin GUI
FORESTIER Fabien
committed
## Installation and usage
FORESTIER Fabien
committed
The interface has been developed with the Angular framework, so you need to have Node.js installed on your machine in order to run the web application.
Once you have Node.js installed you need to install the Angular CLI. Open a command line and run:
FORESTIER Fabien
committed
```bash
npm install -g @angular/cli
```
FORESTIER Fabien
committed
### Configuration
FORESTIER Fabien
committed
Open the /src/assets/config/config.json file and update the configuration in order to match yours.
FORESTIER Fabien
committed
### Run the web application
FORESTIER Fabien
committed
Using the Angular CLI:
FORESTIER Fabien
committed
```bash
ng serve
```
FORESTIER Fabien
committed
Using the npm script (which use the Angular CLI):
FORESTIER Fabien
committed
```bash
npm run start
```
FORESTIER Fabien
committed
### Build the application
FORESTIER Fabien
committed
We defined in the package.json two scripts that can build the application. One that generates an optimized build and the other an unoptimized build. The optimized build takes longer than the normal one.
Those two scripts contain an option --max_old_space_size=\<nb of max RAM octets the node process can take\>. Make sure the number does not exceed your RAM capacity (you can simply remove the option, it will use the default value: 512mb on 32-bit systems and 1gb on 64-bit systems). By incrising the node process memory limit we decrease the build time.
FORESTIER Fabien
committed
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
For development environment (not optimized)
```bash
npm run build:dev
```
For production environment (optimized)
```bash
npm run build:prod
```
### Build and deploy with Docker
The related files are:
* docker-compose.yml which indicates what Dockerfile should be used, what image is going to be build, volumes, exposed port...
* Dockerfile which describe the steps to build the docker image.
Some environment variables need to be set before building or running the image. Use the appropriate command to set those variables: SET on Windows, export on Linux.
```bash
export TAG=<version>
export ADMIN_GUI_BIND_PORT=<port the application should be running on>
```
Then to build the image run:
```bash
docker-compose build --build-arg conf=prod admin-gui #you can change prod to dev if you don't want an optimized build
```
Once the image is built on your machine, run the following command to start a container:
```bash
docker-compose --project-name admin-gui up
```