From DreamFactory
Jump to: navigation, search
Line 50: Line 50:
** <source lang="mysql">FLUSH PRIVILEGES;</source>
** <source lang="mysql">FLUSH PRIVILEGES;</source>
** <source lang="mysql">quit</source>
** <source lang="mysql">quit</source>
== DreamFactory ==
== Web Server ==
=== Nginx ===

Revision as of 13:38, 21 October 2016


DreamFactory requires certain applications for install and other functionality.

  • Install git, curl, zip, unzip
    • $ sudo apt-get install git curl zip unzip


These instructions will install PHP 7 with various modules. DreamFactory requires the mbstring, zip, curl, mongodb, and sqlite3 php modules. Additionally php-fpm is installed if you will be running Nginx as your web server (recommended.) Finally, the mysql php module needs to be installed if you will be using MySQL or MariadDB, which these instructions recommend for the system database. Other database types will require their php modules to be installed for use within DreamFactory. This is covered in the Drivers and Modules section.

Install for Apache

  • $ sudo apt-get install php php-mbstring php-zip php-curl php-mongodb php-sqlite3 php-mysql

Install for Nginx


  • $ sudo apt-get install php-fpm php php-mbstring php-zip php-curl php-mongodb php-sqlite3 php-mysql

Configure PHP FPM

You will need a text editor for this task. The instructions use Nano which comes installed in Ubuntu

  • Edit the php-fpm php.ini file
    • sudo nano /ect/php/7.0/fpm/php.ini
    • Find the line that reads ;cgi.fix_pathinfo=1
    • Change it to read cgi.fix_pathinfo=0
    • Save and exit (Ctrl+x, Y, <Enter>)


Composer is a PHP dependency manager and is required for installing DreamFactory.

  • Make a bin directory in your home directory if it doesn't already exist.
    • $ cd ~
    • <sourec lang="bash">$ mkdir bin</source>
  • Get the setup file from composer
    • $ php -r "copy('', 'composer-setup.php');"
  • Install composer to your bin directory
    • $ php composer-setup.php --install-dir=/home/username/bin --filename=composer
  • Restart your terminal app (if using Linux with a GUI) or log out and log back in.


You'll need a database for the system to store configuration information. We recommend MariaDB for this. Other supported system databases are SQLite, PostgreSQL, and Microsoft SQL.



  • Install the server and client from Apt
    • $ sudo apt-get install mariadb-server mariadb-client


  • Login to the database
    • $ sudo mysql
  • Create a database. You can name it whatever you like. Just make sure you save this information. For the example we called it dreamfactory.
    • CREATE DATABASE dreamfactory;
  • Create a user with all privileges on that database. You can name the user and password whatever you like. Just make sure you save this information. For the example we used dfadmin for both the user and the password.
    • GRANT ALL PRIVILEGES ON dreamfactory.* to 'dfadmin'@'localhost' IDENTIFIED BY 'dfadmin';
  • Flush privileges on the database and quit.
    • quit


Web Server