Phabricator安装

【Phabricator安装】1 .下载phabricator源码

创建文件夹 sudo mkdir /var/www/pha cd /var/www/pha 将源码拉下来 sudo git clone https://github.com/phacility/libphutil.git sudo git clone https://github.com/phacility/arcanist.git sudo git clone https://github.com/phacility/phabricator.git 修改文件权限 cd .. sudo chmod -R 777 pha

2.安装Nginx
sudo apt-get install software-properties-common sudo add-apt-repository ppa:nginx/stable sudo apt-get update sudo apt install -y nginx

安装后,Nginx应自动启动,检查80端口是否正常
netstat -na | grep 80

应看到类似这样的结果:
tcp600 :::80:::*LISTEN

3.安装PHP环境
sudo LC_ALL=en_US.UTF-8 add-apt-repository ppa:ondrej/php sudo apt-get update sudo apt-get -y install php7.1 php7.1-mysql php7.1-fpm php7.1-curl php7.1-xml php7.1-mcrypt php7.1-json php7.1-gd php7.1-mbstring

修改fpm的配置:
sudo vim /etc/php/7.1/fpm/pool.d/www.conf

文件内容,在listen = /run/php/php7.1-fpm.sock之后加入2行:
... ; Note: This value is mandatory. listen = /run/php/php7.1-fpm.sock listen = 9000 listen.allowed_clients = 127.0.0.1 ...

重启PHP:
sudo service php7.1-fpm stop sudo service php7.1-fpm start

测试配置是否生效:
netstat -na | grep 9000

如能显示,说明fpm正常启动:
tcp600 :::9000:::*LISTEN

4配置Nginx
域名比如是:p.mydomain.com,那么创建配置文件:/etc/nginx/conf.d/p.mydomain.com.conf,内容如下:
server { server_name p.mydomain.com; # 配置域名 root/var/www/pha/phabricator/webroot; # 配置根目录location / { index index.php; rewrite ^/(.*)$ /index.php?__path__=/$1 last; }location /index.php { fastcgi_passlocalhost:9000; fastcgi_indexindex.php; #required if PHP was built with --enable-force-cgi-redirect fastcgi_paramREDIRECT_STATUS200; #variables to make the $_SERVER populate in PHP fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name; fastcgi_paramQUERY_STRING$query_string; fastcgi_paramREQUEST_METHOD$request_method; fastcgi_paramCONTENT_TYPE$content_type; fastcgi_paramCONTENT_LENGTH$content_length; fastcgi_paramSCRIPT_NAME$fastcgi_script_name; fastcgi_paramGATEWAY_INTERFACECGI/1.1; fastcgi_paramSERVER_SOFTWAREnginx/$nginx_version; fastcgi_paramREMOTE_ADDR$remote_addr; } }

5安装和配置MySQL
sudo apt-get install mysql-server

提示输入root用户密码,在本例中,密码是:root
在phabricator目录下(/var/www/pha/phabricator)执行命令,将mysql密码设置到phabricator:
bin/config set mysql.pass 'root'

为phabricator创建mysql相关数据表:
sudo ./bin/storage upgrade

6设置和重启Nginx
设置下phabricator的url:
bin/config set phabricator.base-uri 'http://p.mydomain.com'

重启Nginx
sudo service nginx reload

修改hosts
查看本机IP地址: ifconfig
sudo vim /etc/hosts 加入内容: IP地址 p.mydomain.com

访问 http://p.mydomain.com 创建管理员账户
作为管理员,访问Auth,选择Add Provider ,然后添加 Username/Password Provider(用户密码注册)
7配置邮件
以QQ邮箱为例
进入 config -> mail -> metamta.mail-adapter 选择PhabricatorMailImplementationPHPMailerAdapter
进入 config -> mail -> metamta.default-address 设置默认的收发邮件地址
bin/config set phpmailer.mailer smtp bin/config set phpmailer.smtp-host smtp.qq.com -- 和下面的 smtp-user 一致的服务器,我只试过 163的 bin/config set phpmailer.smtp-port 465 -- 确保 465端口未被防火墙 block,如果不行也可试下用 25 端口 bin/config set phpmailer.smtp-protocol SSL bin/config set phpmailer.smtp-user your@qq.com -- 你的账号 bin/config set phpmailer.smtp-passwordpassword

设置完毕,检查是否可以发送邮件:
bin/mail send-test --to myname@qq.com --subject hello

能收到邮件说明配置成功
有时邮件发不出一直在队列中,输入命令查看状态:
bin/mail list-outbound

如果一直发不出
启动守护进程:
sudo ./bin/phd start

    推荐阅读