If you have your own (virtual) web server you can use this guide to install Firefly III. You will some ingredients prepared already.
You need a working LAMP, LEMP or WAMP stack. If you don’t have one, search the web to find out how to get one. Make sure you’re running PHP 7.1. There are many tutorials that will help you install one. For example:
- A guide to install a LAMP stack
- A guide to update to PHP 7.1
- A guide to install PHP7.1 on a Raspberry Pi
If you wish to use another database such as SQLite or Postgres, please check out the Server FAQ.
You need a (MySQL) database and credentials for a user that can access that database. Firefly III creates its own tables. Avoid using the root user.
Several users have created specific guides for their OS and database combination
Install the following PHP modules:
- PHP BCMath Arbitrary Precision Mathematics
- PHP Internationalization extension
- PHP Curl
- PHP Zip
- PHP GD
- PHP XML
- PHP MBString
You can search the web to find out how to install these modules. Some may be installed already depending on your system. Use
phpinfo() to find out.
If you have sudo rights (try
sudo ls) you can install composer using the following command:
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
Verify the installation of composer using the following command.
If you have no sudo rights, you can simply download composer with the instructions under the header “manual download”. Use
php composer.phar instead of
composer in the instructions ahead.
This concludes the server preparations. If you’re having trouble with (parts of) this step, please check out the Server FAQ.
/var/www which is probably the directory where your web server is configured to find its files.
Enter the following command.
composer create-project grumpydictator/firefly-iii --no-dev --prefer-dist firefly-iii <latest>
You should replace
<latest> with the latest version, which you can find on the Github release list.
If this gives an error because of access rights, prepend the command with
sudo. We’ll fix the access rights later.
firefly-iii directory you will find a .env file. Open this file using your favorite editor. There are instructions what to do in this file.
This step is very important, because Firefly III needs a database to work with and it will tell you whether or not your configuration is correct. Run the following command in the Firefly III directory.
php artisan migrate:refresh --seed php artisan firefly:upgrade-database php artisan firefly:verify php artisan passport:install
Now you should be able to visit http://localhost/firefly-iii/ and see Firefly III.
If you’re having trouble with (parts of) this step, please check out the Server FAQ.
You cannot login yet. Click on “Register a new account” and fill in the form.