This document contains some notes on how to install, and start using Blueline.
- Install dependencies
If you don't have Composer yet, download it following the instructions on http://getcomposer.org/
Then, use the
install command in the root directory to install Blueline's PHP dependencies:
php composer.phar install
Blueline uses Doctrine for all database reads, but the data import scripts only work with PostgreSQL.
I use nginx as my web server, but there is no particular requirement for this. Both the currently supported PHP versions will work fine (5.6 and 7).
If you want the PNG image generation part to work, you'll need to install PhantomJS and make the
phantomjs binary available in your
- Checking your System Configuration
./app/config/parameters.yml and fill in the configuration
Create a virtual server pointing to ./web, and redirect all non-existent file requests to app.php. In a production environment you should block access to app_dev.php.
Make sure that your local system is properly configured for Symfony. Execute the
check.php script from
the command line:
If you get any warnings or recommendations, fix them before moving on. The Symfony installation notes
will help. The
var/logs directories must be writable both by the web server and the command
- Create and initialise the database
Create a new PostgreSQL user if required (to match what was just put in the configuration), and run
php ./app/console doctrine:database:create to create the database.
fuzzystrmatch extension (used for the search functionality) into the Blueline database,
by executing something like
psql -d blueline -c "CREATE EXTENSION fuzzystrmatch".
Then have a look at Doctrine's table creation SQL with:
php ./app/console doctrine:schema:create --dump-sql
and make sure that it isn't going to destroy any of your existing data, then run it with:
php ./app/console doctrine:schema:create
- Do an initial data import and asset install
This will download and import the most recent data, create required assets in the web folder, and
warm up all caches. Use the
--nopull flag to do the update without pulling the latest code for
Blueline from Github, and use the
--nodata flag to update Blueline without reloading all the data.
http://blueline.local/app_dev.php/ (or whatever address you've assigned to your local web server in step 2).
./update again will pull the most recent code and data, and import everything as required.
Don't blindly run the script in a production environment though, as things may break.