Application¶
To use the MUSCLE concept, it is a good idea to setup the application itself first. The application contains two components.
Backend
A REST API written in Flask.
Frontend
Web application written in Vue.js.
These two components need to be installed. There are two ways how to install the application on your server.
Run container with muscle docker image
Install Backend and Frontend native on server
Before running the application, make sure to checkout the configuration parameters for the application.
Note
Every configuration shown in this documentation will make MUSCLE and all devices accessible from the local network only. Assuming you work in a private network, otherwise be careful what you do. To make it public you will need to take additional steps, for example setting up a reverse proxy with certificate generation.
Docker¶
The easiest way to install the MUSCLE application is to use docker. The installation with docker will replace the native installation and vice versa.
Native installation¶
The native installation will replace the installation with docker and vice versa. If you want to install the MUSCLE application native on your server, you will have to setup three components.
Backend
Frontend
Webserver
Backend¶
The backend application of MUSCLE is implemented with Flask. Read the manual to install the backend server.
Frontend¶
At the moment there is one web frontend which creates the interface to the devices. Read the manual to install the web application.
Webservers¶
Both applications listed above need to be served by a server. Its recommended to serve both instances by the same server. However, it is also possible to serve them separately on different servers.
These are the currently supported servers, however, you may choose another one which fits you more.
Configuration¶
MUSCLE lets you configure some options by exporting environment variables read below to see these options
Users & Roles¶
Once the application is running, read this to learn about the different user roles and how to manage users.