Phabricator Administrator's Handbook/Installation


The topic How to install Phabricator (or Phorge) is a well covered topic from the official documentation.

Quick Shopping List

edit

While reading the official installation guide you will discover some requirements:

Shell access to your server(s)
You will need to configure some system daemons, a webserver, etc. You should need shell access (through SSH for example).
Phabricator needs 60+ databases
This is an interesting "unusual" requirement: you should create a MySQL/MariaDB user able to access some databases. You can an interesting essay explaining why Phabricator is designed with so many databases.
SSH daemon
Phabricator is able to provide a way to clone repositories through SSH, so you may wish to configure an SSH server with the authentication handled by Phabricator. It's not that difficult, but you may already have an SSH server, you may wish to move your already existing SSH server on another port, in order to configure Phabricator to be on the standard port, having clean cloning URLs. Read the official Diffusion Hosting guide.
PHP version
Phabricator supports PHP 7.1 and newer. Version 7.0 is not supported.[1]
System daemons
After configuring the web server, Phabricator will need to do background operations (to create repositories, to send emails, etc.). This can't be just a "cron job" and you should be able to configure a system daemon, for example using a Systemd unit. You can find some example init scripts for Phabricator. You may need to also configure a system daemon for Aphlict, who handles real time notifications.
Incoming emails
The official guide covers how to configure inbound emails using some external services or a local MTA. There is also another approach that does not involve a service and is simpler than configuring an MTA. Read how to configure inbound Phabricator email just using an IMAP spooler.

Creating MariaDB database credentials

edit

Very probably you just want a MariaDB database. And very probably you want a dedicated user, able to create such databases.

In this example we will assume:

  • databases prefixed by phabricator_
  • database user called phorge
  • password super secret (please, please, replace it with something strong)

First, install MariaDB. Example in Debian and Ubuntu:

sudo apt install mariadb-database

Then, create a dedicated user able to operate on prefixed databases. Please replace super secret with your new password.

sudo mysql

CREATE USER phorge@localhost IDENTIFIED BY 'super secret';
GRANT ALL PRIVILEGES ON `phabricator\_%`.* to phorge@localhost;

exit

Then, enter in your Phorge/Phabricator directory and setup your credentials. Again, please replace super secret with the above password:

./bin/config set mysql.host localhost
./bin/config set mysql.user phorge
./bin/config set mysql.pass 'super secret'

Now you are ready to follow the official documentation.

Official documentation

edit

Please now proceed with the official documentation.

https://we.phorge.it/book/phorge/article/installation_guide/

Notes

edit
  1. "Phabricator PHP 7 Compatibility". Phabricator.