pyronear / pyro-platform

Detection & monitoring platform of wildfires
https://platform.pyronear.org/
Apache License 2.0
10 stars 10 forks source link
dash-server data-visualization docker plotly-dash web-app wildfires

Pyronear Platform

License: Apache 2.0 Codacy Badge Build Status

The building blocks of our wildfire detection & monitoring API.

Quick Tour

Running/stopping the service

You can run the app container using this command for dev purposes:

make run_dev

or for production:

make run

You can now navigate to http://localhost:8050/ to interact with the app.

In order to stop the service, run:

make stop

If you need to launch the pyro-api in your development environment you can use the pyro-devops project. You can use it in two different ways : => by building the pyro-platform image and launch the full development environment with the command :

make run

=> by launching the development environment without the platform :

make run-engine

adding this line in your /etc/hosts :

127.0.0.1 www.localstack.com localstack

and launching your project locally :

python3 app/index.py

Installation

Prerequisites

The project was designed so that everything runs with Docker orchestration (standalone virtual environment), so you won't need to install any additional libraries.

Configuration

In order to run the project, you will need to specific some information, which can be done using a .env file. This file will have to hold the following information:

Optionally, the following information can be added:

So your .env file should look like something similar to:

API_URL='https://alert.mydomain.com/api'
API_LOGIN='forest_saver'
API_PWD='ILoveForest!'
SENTRY_DSN='https://replace.with.you.sentry.dsn/'
SENTRY_SERVER_NAME=my_storage_bucket_name

The file should be placed at the root folder of your local copy of the project.

Also please note that you should use docker-compose-dev.yml file for dev as we do not need reverse proxy:

docker-compose -f docker-compose-dev.yml up

For production we use docker-compose.yml in which there is the Traefik Reverse Proxy.

Traefik interacts with the Dash frontend app via an external network called web, this needs do be created as follow:

docker network create web

License

Distributed under the Apache 2.0 License. See LICENSE for more information.