It's not recommended to run this application with public access. Ideally, run it on private network.
This is a basic Symfony PHP application and the requirements are:
- PHP >= 7.3
- BCMath PHP Extension
- Ctype PHP Extension
- Iconv PHP Extension
- JSON PHP Extension
- Mbstring PHP Extension
- Redis + PHP Extension
For Apache or Nginx, setup a virtual host to
point to the public/ directory of the project.
Make sure that var/ directory is writable by www-data user or the appropriate web server user.
Create .env.local with custom variables (how to and which is described in .env).
Configuration files are in config/packages/ directory (a specially: app.yaml, bird.yaml, cache.yaml). They could
be rewritten with environment equivalents in dev/, prod/, test/ subdirectories.
You need to give the www-data user permission to run the birdc script. Add to /etc/sudoers:
www-data ALL=(ALL) NOPASSWD: /project_path/bin/birdc
The best way to install dependencies is using Composer and Yarn
from project_path:
$ composer install
$ yarn installAnd then build assets:
$ yarn buildFor Commands List run from project_path:
$ php bin/consoleImport invalid routes for all servers:
$ php bin/console app:import-invalid-routesOr specifically for one server:
$ php bin/console app:import-server-invalid-routes nix-rs-1Import filtered routes for all servers:
$ php bin/console app:import-filtered-routesOr specifically for one server:
$ php bin/console app:import-server-filtered-routes nix-rs-1For automation commands use:
$ crontab -u www-data -eAnd add similar:
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=""
# NIX/BirdSpy Invalid Routes
*/5 * * * * /usr/bin/php /project_path/bin/console app:import-server-invalid-routes nix-rs-1 -q
# NIX/BirdSpy Filtered Routes
*/7 * * * * /usr/bin/php /project_path/bin/console app:import-server-filtered-routes nix-rs-1 -q
It's recommended, but not necessary to change time format to match BirdSpy looking glass:
timeformat base iso long;
timeformat log iso long;
timeformat protocol iso long;
timeformat route iso long;
This application is open-sourced software licensed under the MIT license – see the license file.