Getting Started
Prerequisites
- Tested on macOS, Ubuntu, and Debian
- docker and docker-compose
- python3 with pip3
Installation
- Clone the repository and change to the FirmwareDroid directory
1 2 3
git clone --recurse-submodules https://github.com/FirmwareDroid/FirmwareDroid.git cd FirmwareDroid
Install python packages for the setup:
1
pip3 install jinja2
Run the setup script, which will create a
.env
file with default settings. You can edit this file later to change settings like passwords or ports.:1
python3 ./setup.py
Option 1: Just Run (for users)
Start the containers
1 2
chown -R $(id -u):$(id -g) ./blob_storage docker compose -f docker-compose-release.yml up
The first start takes some time because the database will change the mode to a replica-set. Wait until the logscreen stops moving (takes usually 2 to 5 minutes).
Option 2: Build Source (for developers)
Build the docker base images (takes some time).
1 2
chmod +x ./docker/build_docker_images.sh ./docker/build_docker_images.sh
Set correct access rights for the blob storage and start the containers
1 2
chown -R $(id -u):$(id -g) ./blob_storage docker compose up
The first start takes some time because the database will change the mode to a replica-set. Wait until the logscreen stops moving (takes usually 2 to 5 minutes).
Usage
Open the browser under https://fmd.localhost. By default, a self-signed certificates is used, and you will encounter a TLS warning.
Log-into the application. Password and username can be found in the
.env
file within the root directory of the server.1 2 3 4 5
cat .env ... DJANGO_SUPERUSER_USERNAME=XXXXX-XXXX DJANGO_SUPERUSER_PASSWORD=XXXXX-XXXX-XXXX ...
After log-in (via https://fmd.localhost/admin), you can explore the following routes: