Install using python and pip
Check your version of python
You will need python 3.8 or later. You can check your version of python by typing into a terminal:
Create a virtual environment
It is recommended that you install into a “virtual environment” so this installation will not interfere with any existing Python software:
python3 -m venv /path/to/venv source /path/to/venv/bin/activate
Running the application
You can now use
pip to install the application:
# first make sure pip and wheel are up to date python3 -m pip install --upgrade pip wheel python3 -m pip install maaspower
If you require a feature that is not currently released you can also install from github:
python3 -m pip install git+git://github.com/gilesknap/maaspower.git
The application should now be installed and the command line interface on your path. You can check the version that has been installed by typing:
Install using the container
Releases of MaasPower include a container that holds python, maaspower and also the uhubctl command line utility. This can be a convenient way to deploy since you will only need a container runtime on the target machine.
If you use docker you can tell it to restart the container on reboot of the machine so this is a convenient way to install it as a ‘service’.
Assuming you already have docker (or podman) installed then the following command line will launch maaspower as a background task and restart it on reboot.
(replace CONFIG_FILE and CONFIG_PATH with your own config file details)
volumes="-v <CONFIG_PATH>:/config" service="-d --restart unless-stopped" image="ghcr.io/gilesknap/maaspower:0.5" sudo="--privileged --net host" docker run -it --name maaspower $volumes $service $sudo $image run /config/<CONFIG_FILE>
You can look at the output to verify all is well with:
docker logs maaspower
And stop the web server with:
docker stop maaspower docker container delete maaspower