2011-02-11 23:58:45 +01:00
|
|
|
@title Installation Guide
|
2011-05-12 17:15:02 +02:00
|
|
|
@group intro
|
2011-02-11 23:58:45 +01:00
|
|
|
|
|
|
|
This document contains basic install instructions to get Phabricator up and
|
|
|
|
running.
|
|
|
|
|
|
|
|
= Installation Requirements =
|
|
|
|
|
|
|
|
Phabricator is a LAMP application suite, so you basically need LAMP:
|
|
|
|
|
2011-06-13 05:40:50 +02:00
|
|
|
- **Linux**: Some flavor of Linux is required. Mac OS X is an acceptable
|
|
|
|
flavor of Linux. Windows is not an acceptable flavor of Linux. Phabricator
|
|
|
|
will not install or work properly on Windows. (If you want it to, send
|
|
|
|
patches.) Phabricator has active contributors running it on Mac OS X, Amazon
|
|
|
|
Linux, Ubuntu, RHEL and CentOS; if you run into issues on other flavors,
|
|
|
|
send patches or complaints.
|
2012-01-17 01:05:00 +01:00
|
|
|
- **Apache** (or nginx): You need Apache (or nginx). You might be able to use
|
|
|
|
something else, but you're on your own.
|
2011-02-11 23:58:45 +01:00
|
|
|
- **MySQL**: You need MySQL.
|
|
|
|
- **PHP**: You need PHP 5.2 or newer.
|
|
|
|
|
2012-03-20 03:48:41 +01:00
|
|
|
NOTE: The command line interface to Phabricator, "Arcanist", //does// work on
|
|
|
|
Windows. For instructions, see @{article:Arcanist User Guide: Windows}.
|
|
|
|
|
2011-02-11 23:58:45 +01:00
|
|
|
You'll probably also need a **domain name** and you'll certainly need
|
|
|
|
**a computer** with a connection to **the internet**.
|
|
|
|
|
|
|
|
= Installing Required Components =
|
|
|
|
|
2011-06-13 05:40:50 +02:00
|
|
|
If you are installing on Ubuntu or an RedHat derivative, there are install
|
|
|
|
scripts available which should handle most of the things discussed in this
|
|
|
|
document for you:
|
2011-02-11 23:58:45 +01:00
|
|
|
|
2011-06-13 05:40:50 +02:00
|
|
|
- **RedHat Derivatives**: <http://phabricator.com/rsrc/install/install_rhel-derivs.sh>
|
|
|
|
- **Ubuntu**: <http://phabricator.com/rsrc/install/install_ubuntu.sh>
|
2011-02-11 23:58:45 +01:00
|
|
|
|
2011-06-13 05:40:50 +02:00
|
|
|
If those work for you, you can skip directly to the
|
|
|
|
@{article:Configuration Guide}. These scripts are also available in the
|
|
|
|
##scripts/install## directory in the project itself.
|
2011-05-08 22:25:39 +02:00
|
|
|
|
2011-06-13 05:40:50 +02:00
|
|
|
Otherwise, here's a general description of what you need to install:
|
2011-05-08 22:25:39 +02:00
|
|
|
|
2011-06-13 05:40:50 +02:00
|
|
|
- git (usually called "git" in package management systems)
|
2012-01-17 01:05:00 +01:00
|
|
|
- Apache (usually "httpd" or "apache2") (or nginx)
|
2011-06-13 05:40:50 +02:00
|
|
|
- MySQL Server (usually "mysqld" or "mysql-server")
|
|
|
|
- PHP (usually "php")
|
2012-01-17 01:05:00 +01:00
|
|
|
- Required PHP extensions: mbstring, iconv, mysql, curl, pcntl (these might be
|
|
|
|
something like "php-mysql" or "php5-mysql")
|
2011-06-13 05:40:50 +02:00
|
|
|
- Optional PHP extensions: gd, apc (special instructions for APC are available
|
2011-06-26 20:21:25 +02:00
|
|
|
below if you have difficulty installing it), xhprof (instructions below,
|
|
|
|
you only need this if you are developing Phabricator)
|
2011-06-13 05:40:50 +02:00
|
|
|
|
|
|
|
If you already have LAMP setup, you've probably already got everything you need.
|
|
|
|
It may also be helpful to refer to the install scripts above, even if they don't
|
|
|
|
work for your system.
|
|
|
|
|
|
|
|
Now that you have all that stuff installed, grab Phabricator and its
|
|
|
|
dependencies:
|
2011-02-11 23:58:45 +01:00
|
|
|
|
|
|
|
$ cd somewhere/ # pick some install directory
|
|
|
|
somewhere/ $ git clone git://github.com/facebook/libphutil.git
|
|
|
|
somewhere/ $ git clone git://github.com/facebook/arcanist.git
|
|
|
|
somewhere/ $ git clone git://github.com/facebook/phabricator.git
|
2011-05-08 22:25:39 +02:00
|
|
|
somewhere/ $ cd phabricator
|
|
|
|
somewhere/phabricator/ $ git submodule update --init
|
|
|
|
|
2011-06-13 16:58:02 +02:00
|
|
|
= Installing APC (Optional) =
|
2011-02-11 23:58:45 +01:00
|
|
|
|
|
|
|
Like everything else written in PHP, Phabricator will run much faster with APC
|
|
|
|
installed. You likely need to install "pcre-devel" first:
|
2011-05-08 22:25:39 +02:00
|
|
|
|
2011-02-11 23:58:45 +01:00
|
|
|
sudo yum install pcre-devel
|
2011-05-08 22:25:39 +02:00
|
|
|
|
2011-06-13 05:40:50 +02:00
|
|
|
Then you have two options. Either install via PECL (try this first):
|
2011-02-11 23:58:45 +01:00
|
|
|
|
|
|
|
sudo yum install php-pear
|
|
|
|
sudo pecl install apc
|
2011-05-08 22:25:39 +02:00
|
|
|
|
2011-06-13 05:40:50 +02:00
|
|
|
**If that doesn't work**, grab the package from PECL directly and follow the
|
|
|
|
build instructions there:
|
2011-02-11 23:58:45 +01:00
|
|
|
|
|
|
|
http://pecl.php.net/package/APC
|
2011-05-08 22:25:39 +02:00
|
|
|
|
2011-02-11 23:58:45 +01:00
|
|
|
Installing APC is optional but **strongly recommended**, especially on
|
|
|
|
production hosts.
|
|
|
|
|
|
|
|
Once APC is installed, test that it is available by running:
|
|
|
|
|
|
|
|
php -i | grep apc
|
2011-05-08 22:25:39 +02:00
|
|
|
|
2011-02-11 23:58:45 +01:00
|
|
|
If it doesn't show up, add:
|
|
|
|
|
|
|
|
extension=apc.so
|
2011-05-08 22:25:39 +02:00
|
|
|
|
2011-02-11 23:58:45 +01:00
|
|
|
..to "/etc/php.d/apc.ini" or the "php.ini" file indicated by "php -i".
|
|
|
|
|
2011-06-26 20:21:25 +02:00
|
|
|
= Installing XHProf (Optional) =
|
|
|
|
|
|
|
|
XHProf is a PHP profiling tool. You don't need to install it unless you are
|
|
|
|
developing Phabricator and making performance changes.
|
|
|
|
|
2012-01-09 16:39:25 +01:00
|
|
|
You can install xhprof with:
|
2011-06-26 20:21:25 +02:00
|
|
|
|
2012-01-09 16:39:25 +01:00
|
|
|
$ pecl install xhprof
|
2011-06-26 20:21:25 +02:00
|
|
|
|
2012-01-09 16:39:25 +01:00
|
|
|
If you have a PEAR version prior to 1.9.3, you may run into a `phpize` failure.
|
|
|
|
If so, you can download the source and build it with:
|
|
|
|
|
|
|
|
$ cd extension/
|
|
|
|
$ phpize
|
|
|
|
$ ./configure
|
|
|
|
$ make
|
|
|
|
$ sudo make install
|
|
|
|
|
|
|
|
You may also need to add "##extension=xhprof.so#" to your php.ini.
|
|
|
|
|
|
|
|
See <https://bugs.php.net/bug.php?id=59747> for more information.
|
2011-06-26 20:21:25 +02:00
|
|
|
|
2011-06-30 04:45:12 +02:00
|
|
|
= Updating Phabricator =
|
|
|
|
|
|
|
|
Since Phabricator is under active development, you should update frequently.
|
|
|
|
You can use a script similar to this one to automate the process:
|
|
|
|
|
|
|
|
http://phabricator.com/rsrc/install/update_phabricator.sh
|
|
|
|
|
2011-02-11 23:58:45 +01:00
|
|
|
= Next Steps =
|
|
|
|
|
2011-05-12 17:15:02 +02:00
|
|
|
Continue by:
|
|
|
|
|
|
|
|
- configuring Phabricator with the @{article:Configuration Guide}.
|