Rust based directory application to collect lists of federated instances of a software.
The application is built primarily using the following libraries:
- https://rocket.rs - web framework, including a web server and multi-threaded request handler
- https://hyper.rs - http client and server
- https://tera.netlify.com - template engine
- https://diesel.rs - database ORM and query builder
The image supports the use of the following environment variables:
CRON
: (Optional) If set when running the app a cron cycle is performed. Set it toCRON=FULL
to run a full cron (once a day).GEOIP_MMDB
: path to the GeoIP database, in MaxMind formatROCKET_DATABASES
: database dict for Diesel SQLite library integration into RocketROCKET_SECRET_KEY
: Needed in production environments, used to protect private cookies, generate this usingopenssl rand -base64 32
/var/directory.sqlite
: Database file, needs to be writeable/var/geoip-country.mmdb
: GeoIP database, country level is sufficient
8000/tcp
: HTTP of web service
make help