? ? ?首先說明,主要參考官方文檔以及陳曉偉? xiaowei@multicorewareinc.com翻譯的中文安裝使用指南砾层。里面有我自己試驗(yàn)探索出來的各種問題和解決方案喊衫。
? ? Phabricator是一個(gè)LAMP應(yīng)用套件,因此最基本的要求就是LAMP環(huán)境,這是基礎(chǔ)逃糟,所以你能使用Linux、Mac OS 但是無法使用Windows來作為你的服務(wù)器蓬豁。其他依賴項(xiàng): APache(nginx履磨、lighttpd)、MYSQL庆尘、PHP(>5.2)剃诅、git、PHP的擴(kuò)展驶忌。
? ? 你可以選擇自己安裝各個(gè)依賴項(xiàng)組件矛辕,然后配置或者直接使用官方提供的安裝腳本笑跛,建議初次使用,搭建實(shí)驗(yàn)和試用的使用安裝腳本聊品,簡單方便飞蹂。最好使用全新的系統(tǒng),免得干擾翻屈。
? ? ? ? ?lRedHat衍生版本:http://www.phabricator.com/rsrc/install/install_rhel-derivs.sh
? ? ? ? ?Ubuntu:http://www.phabricator.com/rsrc/install/install_ubuntu.sh
如果要自己搭建陈哑,請(qǐng)參照官方文檔說明:https://secure.phabricator.com/book/phabricator/article/installation_guide/
安裝完畢后,配置你的webserver伸眶,以后都以安裝腳本為例惊窖,使用的是Apache。修改 httpd.conf 加入 serverName localhost厘贼。 重啟Apache: service apache restart 或者 /etc/init.d/apache2 restart.
打開瀏覽器界酒,在地址欄中輸入 你的服務(wù)器地址 http://你的服務(wù)器ip∽旖眨看是否會(huì)出現(xiàn)“It works”的字樣毁欣,如果出現(xiàn)代表Apache運(yùn)行正常。否則岳掐,就需要去查看一下httpd.conf是否配置正確了凭疮。如果 端口沖突,記得修改端口串述。
如果有問題执解,請(qǐng)查看Apache的幫助文檔。確保mod_php和mod_rewrite啟用剖煌,如果你設(shè)置SSL材鹦,請(qǐng)開啟mod_ssl模塊。這里得模塊都是默認(rèn)開啟的耕姊。
如果你還沒有設(shè)置一個(gè)域名指向你將要安裝的主機(jī)上桶唐。你可以安裝Phabricator到一個(gè)二級(jí)域名(如phabricator.example.com)上或一個(gè)完整域名上,但你不能安裝到一個(gè)已經(jīng)存在的網(wǎng)站的某個(gè)子目錄下茉兰。輸入你將要安裝到的域名以確保?Apache可以為其正常服務(wù)尤泽,并且DNS已經(jīng)正確配置。
注意:域名必須包含點(diǎn)(.)规脸,而不只是一個(gè)名稱坯约,如http://example/。否則莫鸭,一些web瀏覽器將無法設(shè)置cookies闹丐。
現(xiàn)在,可以創(chuàng)建一個(gè)VirtualHost條目(放置Phabricator到一個(gè)二級(jí)域名上)或編輯Directory條目的DocumentRoot被因。將如下所示:
<VirtualHost*>
# Change this to the domain which points to your host.
ServerNamephabricator.example.com
# Change this to the path where you put 'phabricator' when you checked it卿拴。
# out from GitHub when following the Installation Guide.
# Make sure you include "/webroot" at the end!
DocumentRoot/path/to/phabricator/webroot
RewriteEngine on
RewriteRule^/rsrc/(.*)- ? ? ? ? ? ? ? ? ? ? ? ? ?[L,QSA]
RewriteRule^(.*)$ ?/index.php?__path__=$1[B,L,QSA
RewriteRule^/favicon.ico- ? ? ? ? ? ? ? ? ? ? ? ? ? ? [L,QSA]
然后重啟apache衫仑,接著你可以在你的瀏覽器上看到phabricator頁面了。
?
是不是很開心堕花,感覺勝利在望文狱,只能說你圖樣,想多了缘挽,孩子瞄崇。路還長著呢『韭看到上面的提示了么苏研? 點(diǎn)擊issue列表,一個(gè)個(gè)的點(diǎn)擊去解決吧窝稿,每個(gè)都有提示的楣富≡涞啵可以按照提示解決伴榔,如果英文有問題,參照中文安裝手冊(cè)----http://wenku.baidu.com/view/b2fd127b312b3169a451a44a.html
配置中注冊(cè)是需要發(fā)送郵件的庄萎,如果是自己的服務(wù)器或者阿里云之類的踪少,有2中選擇比較靠譜,
PhabricatorMailImplementationPHPMailerLiteAdapter : 默認(rèn)的糠涛,只需要給服務(wù)器安裝 sendmail服務(wù)即可援奢,但是有個(gè)問題,郵件名是使用默認(rèn)的忍捡,可能會(huì)被自己公司反垃圾郵件給屏蔽了集漾,接受不到郵件。
PhabricatorMailImplementationPHPMailerAdapter: 利用SMTP去使用大家廣泛使用的郵箱砸脊,例如163具篇、QQ、Sina凌埂、SoHO等驱显,但是記得在上述郵箱中打開響應(yīng)設(shè)置。
配置完成了瞳抓,重啟PHD埃疫,然后你發(fā)現(xiàn),能創(chuàng)建用戶了孩哑,能登錄系統(tǒng)了栓霜,能點(diǎn)擊各種按鈕,現(xiàn)在可以使用其他的功能横蜒,但是你創(chuàng)建repository之后胳蛮,無論是 git hg svn 都各種失敗秤掌,所以來說說怎么配置這個(gè)地方,這個(gè)地方鹰霍,官方文檔講的比較模糊闻鉴,而且中文文檔也只是翻譯,很多沒說清楚茂洒,至少我這么認(rèn)為的孟岛。
首先PHA(表示phabricator,以后就這么縮寫了)支持2中方式:SSH 和 HTTP督勺。支持3中代碼版本管理:Git渠羞、SVN、Mercurial(hg)智哀。
參照官方文檔:https://secure.phabricator.com/book/phabricator/article/diffusion_hosting/
里面提到3種用戶賬號(hào)次询,其中 daemon-user 用來啟動(dòng)守護(hù)進(jìn)程phd,建議直接用root瓷叫,因?yàn)樗枰猺oot權(quán)限屯吊,否則你需要新建一個(gè),并且給此用戶root權(quán)限摹菠。
www-user這個(gè)如果是使用安裝腳本盒卸,apache已經(jīng)有了 www-data 就是俄认,每個(gè)系統(tǒng)可能會(huì)有差別逆趋,記住這個(gè)就是 apache 的啟動(dòng)用戶,如果自己配置的献幔,查看配置煮寡,使用nginx的自己查看虹蓄,啟動(dòng)nginx的用戶。
最后一個(gè)vcs-user 這個(gè)是用來啟用ssh的幸撕,基本需要自己手動(dòng)創(chuàng)建一個(gè)新的用戶薇组。
接著配置 /etc/sudoers,這里有幾點(diǎn)要注意: 一個(gè)是 路勁杈帐, vcs用戶的git-upload-pack等的路徑需要注意体箕,因?yàn)镻HA有的 environment.path-bin的配置項(xiàng),里面有path路徑挑童,如果你配置的路徑不包含在里面累铅,貌似會(huì)有問題的。 最好自己多用命名查看下站叼。另外一個(gè)是 www用戶 git-http路徑娃兽,文檔直接給的 /usr/bin/git-http-backend. 但是我的系統(tǒng)里面沒有這個(gè)文件,于是我修改到我的 git-core 路徑去了尽楔,但是各種不起作用投储,最后我在 /usr/bin 下面建立了一個(gè)軟連接才成功第练。
需要將phd.user設(shè)置為daemon-user:phabricator/$ ./bin/config set phd.user daemon-user
SSH配置比較麻煩,容易出錯(cuò)玛荞,如果不配置就沒辦法使用 ssh的形式來clone代碼娇掏。
移動(dòng)SSHD端口, 必須要配置勋眯,我在這里費(fèi)時(shí)很久婴梧,我開始以為這個(gè)只是多一個(gè)守護(hù)進(jìn)程,可以使用默認(rèn)的22端口客蹋,一點(diǎn)也不影響塞蹭,結(jié)果就是ssh各種不成功,提示的錯(cuò)誤也是千奇百怪讶坯,一直調(diào)整各種配置番电。 這里修改端口的意義,在于區(qū)分 普通正常的ssh到服務(wù)器和使用PHA的ssh clone代碼辆琅。 建議用文檔的方式漱办,安全一點(diǎn),其實(shí)就是 修改 sshd_config的 Port 屬性涎跨,然后 service ssh restart洼冻。
配置并啟動(dòng)Phabricator SSHD崭歧。這個(gè)按照文檔走就行隅很,比較簡單,如果不復(fù)制率碾,直接使用原文檔叔营,修改下也行的。注意里面的 user 要修改成你自己新建的VCS用戶所宰。然后啟動(dòng) sshd绒尊。 這里使用SSHD命令的時(shí)候,注意是用絕對(duì)路徑/usr/sbin/sshd
如果成功仔粥,在你的其他機(jī)子婴谱,添加 ssh 公鑰到 PHA系統(tǒng)的 Setting面板,這樣你就可以測(cè)試了躯泰。
$ ssh -T dweller@secure.phabricator.comphabricator-ssh-exec: Welcome to Phabricator.You are logged in as alincoln.You haven't specified a command to run. This means you're requesting aninteractive shell, but Phabricator does not provide an interactive shell overSSH.Usually, you should run a command like `git clone` or `hg push` rather thanconnecting directly with SSH.Supported commands are: conduit, git-receive-pack, git-upload-pack, hg,svnserve.
哦對(duì)了谭羔,如果使用 http,要在 setting頁面去創(chuàng)建 VCS Password麦向。這個(gè)要和登錄密碼不一樣瘟裸,如果使用 用戶名\密碼方式認(rèn)證登錄的話。
到這里诵竭,整個(gè)系統(tǒng)就可以使用话告,包含代碼版本管理兼搏,代碼審查、bug和問題跟蹤沙郭、團(tuán)隊(duì)合作佛呻。