Phabricator – Isi mmalite mepere emepe dị ike “Ngwaọrụ njikwa ọrụ” maka Linux


Phabricator bụ ngwa mepere emepe nke na-enyere ụlọ ọrụ sọftụwia aka imepụta/wulite sọftụwia ka mma, nke ejiri asụsụ PHP rụọ yana dị n'okpuru ikike Apache 2.0 mepere emepe maka Linux, MacOSX ma nwee ike ịgba ọsọ n'elu ikpo okwu ọ bụla, ọ nwere ike na-agba ọsọ na windo mana ọ dabere kpamkpam na nkwado Linux. Facebook ejirila Phabricator na mbụ. Ejiri facebook wuo ụdị mbụ nke phabricator nwere ọtụtụ atụmatụ dị ka nyocha na koodu nyocha, nchichi nchichi wdg.

Anyị nwere ike iji phabricator dị ka ebe nchekwa dị ka git na svn. Enwere ọtụtụ ntọala nzuzo dị iji chekwaa koodu n'etiti otu mmepe otu. Anyị nwere ike nyochaa koodu nke ndị ọrụ ibe tupu imecha koodu ahụ.

Enwere m olileanya na onye ọ bụla maara maka git, ọ bụrụ na ọ bụghị, biko nwee ngwa ngwa lelee akụkọ GIT dị n'okpuru, nke na-akọwa otu esi eji ya.

  1. Wụnye GIT ka ịmepụta ọrụ nke gị na ebe nchekwa GITHub

Otu dị ka git, phabricator nwekwara ọtụtụ atụmatụ yana ọtụtụ ụlọ ọrụ ama ama dị ka Facebook, Dropbox, Groupon na-eji emepụta ngwa weebụ ebe ahụ.

Phabricator nwere ike na-agba ọsọ na kọmputa nkịtị, yana ngwugwu ndị a chọrọ. Anyị achọghị nkọwapụta nwere akụrụngwa dị elu.

  1. Apache2.2.7 ma ọ bụ karịa
  2. MySQL na PHP 5.2 ma ọ bụ karịa
  3. Git na ụfọdụ ndọtị php.

IHE: Enwere ike ịwụnye Phabricator na ngalaba dum (linux-console.net) ma ọ bụ na ngalaba ngalaba (phabricator.linux-console.net). Ị nweghị ike ịwụnye ya n'otu ụzọ na ngalaba ọ bụla dị, kwuo linux-console.net/phabricator.

Kwụpụ 1: Ịwụnye akụrụngwa achọrọ

Enwere edemede maka ịtọlite na Ubuntu na Linux Redhat, họrọ nhọrọ a ma ọ bụrụ na ịmabeghị Linux.

  1. RedHat Mmepụta - http://www.phabricator.com/rsrc/install/install_rhel-derivs.sh
  2. Ubuntu Mmepụta – http://www.phabricator.com/rsrc/install/install_ubuntu.sh

Ọ bụrụ na ị bụ onye ọrụ Advance, naanị ị ga-achọ ịtọlite sava LAMP ka ọ na-arụ ọrụ na-enye ọgwụ. Ọ dị mma, ugbu a ka anyị malite ịwụnye Phabricator na RHEL/CentOS na Ubuntu/Debian.

Wụnye ihe nkesa LAMP ma tinye ụfọdụ ndọtị php, mgbe ị na-etinye.

# yum install mysql-server httpd git php php-mysql php-gd php-curl php-apc php-cli -y
$ sudo apt-get install mysql-server apache2 git-core git php5 php5-mysql php5-gd php5-curl php-apc php5-cli -y

IHE: Na nkesa sitere na Ubuntu, n'oge echichi ọ ga-ajụ gị ka itinye paswọọdụ mgbọrọgwụ maka MysQL.

Kwụpụ 2: Budata faịlụ Phabricator

Otu oge, ị rụnyere ihe niile dị n'elu, ugbu a họrọ akwụkwọ ndekọ wụnye. N'ebe a, m ga-emepụta ndekọ aha a na-akpọ 'myprojectapp' n'okpuru DocumentRoot nke akwụkwọ ndekọ aha Apache.

# mkdir /var/www/html/myprojectapp		[On RedHat]

$ sudo mkdir /var/www/myprojectapp		[On Ubuntu]

Ọ bụrụ na ị na-wụnye, dị ka onye ọrụ nkịtị, ị ga-agbakwunye onye ọrụ ugbu a (n'ọnọdụ m ''tecmint') na Apache otu iji nweta ikike ide. Enwere ike ileghara nzọụkwụ a anya ma ọ bụrụ na ịgbanwere gị na onye ọrụ mgbọrọgwụ.

# chown -R tecmint:apache /var/www/html		[On RedHat]
$ sudo chown -R tecmint:www-data /var/www	[On Ubuntu]	

Mgbe ahụ gaa na ndekọ aha emepụtara ọhụrụ ya bụ myprojectapp.

# cd /var/www/html/myprojectapp			[On RedHat]

$ cd /var/www/myprojectapp			[On Ubuntu]

Ugbu a, malite ịdọrọ onye na-ere ọgwụ na ihe ndabere ya site na ebe nchekwa git gọọmentị.

git clone https://github.com/phacility/libphutil.git
git clone https://github.com/phacility/arcanist.git
git clone https://github.com/phacility/phabricator.git

Kwụpụ 3: Hazie Apache maka Phabricator

Na nkesa nke Ubuntu, ịkwesịrị ịme ka mod_php, mod_rewrite na mod_ssl modul, n'oge ntinye ọtụtụ n'ime modul ndị a na-enyere aka na ndabara, mana anyị kwesịrị ịkwado.

# sudo a2enmod rewrite
# sudo a2enmod ssl

Ozugbo, modul ndị a nyeere, ọzọ malitegharịa sava weebụ iji gosipụta mgbanwe.

$ sudo /etc/init.d/apache2 restart		[On Ubuntu]

Na-esote, mepụta Virtualhost dị iche na faịlụ nhazi Apache gị.

# vi /etc/httpd/conf/httpd.conf			[On RedHat]

$ sudo nano /etc/apache2/sites-available/phabricator.conf	[On Ubuntu]	

Tinye ntinye Virtualhost na ala nke faịlụ ahụ wee gbanwee ụzọ DocumentRoot ka ọ dabara kpọmkwem ebe faịlụ ndị na-emepụta ọgwụ.

<VirtualHost *:80>
        ServerAdmin [email 
        ServerName phab.tecmintlocal.com
        DocumentRoot /var/www/html/myprojectapp/phabricator/webroot
        RewriteEngine on
        RewriteRule ^/rsrc/(.*)     -                       [L,QSA]
        RewriteRule ^/favicon.ico   -                       [L,QSA]
        RewriteRule ^(.*)$          /index.php?__path__=$1  [B,L,QSA]
<Directory "/var/www/html/myprojectapp/phabricator/webroot">
        Order allow,deny
        Allow from all
</Directory>
</VirtualHost>

Na Ubuntu, ịkwesịrị ịme ka ntinye virtualhost emepụtara ọhụrụ site na iji iwu na-esonụ. Maka sistemu RedHat, ọ nweghị mkpa ịme ka ihe ọ bụla nwee ike.

$ sudo a2ensite phabricator.conf

N'ikpeazụ, malitegharịa ọrụ Apache iji gosipụta mgbanwe ọhụrụ.

# service httpd restart				[On RedHat]

$ sudo /etc/init.d/apache2 restart		[On Ubuntu]

Kwụpụ 4: Hazie MySQL maka Phabricator

Ugbu a, ọ bụ oge ịhazi MySQL, mana tupu ịmalite nhazi, jide n'aka na MySQL na-agba ọsọ ma ị nwere ike jikọọ na ya. Yabụ, na ị nwere ike ibunye ntọala mysql n'ime ya.

# cd /var/www/html/myprojectapp/phabricator/		[On RedHat]

# cd /var/www/myprojectapp/phabricator/			[On Ubuntu]

# ./bin/config set mysql.host localhost
# ./bin/config set mysql.user root
# ./bin/config set mysql.pass mjackson

Na-esote, mee script nkwalite nchekwa ka ibunye atụmatụ nchekwa data n'ime ya. Mgbe ị na-ahazi, ọ ga-akpali gị ịpị 'y' ka ọ gaa n'ihu, nke a ga-ewe obere oge iji wuchaa ntọlite maka nhazi data schema.

# ./bin/storage upgrade --user root --password mjackson

Otu oge, agbakwunyere atụmatụ na mysql, malitegharịa ọrụ ahụ ka iwere ntọala ọhụrụ.

# service mysql restart

$ sudo service mysql restart

Kwụpụ 5: Na-ahazi UI Weebụ Phabricator

Ugbu a ị nwere ike ịnweta UI weebụ n'ebe ndị a, mana anyị kwesịrị ịmepụta akaụntụ nbanye admin.

http://phab.tecmintlocal.com/

OR

http://ipaddress

Ọ bụrụ na egosighi ibe nhazi nchịkwa dị n'elu, anyị kwesịrị iji aka mepụta nchịkwa nbanye site na njedebe. Naanị nzọụkwụ a chọrọ, ma ọ bụrụ na anyị enweta njehie kpatara akọwapụtaghị akaụntụ nchịkwa.

# ./bin/accountadmin

Ozugbo emepụtara akaụntụ nchịkwa, ị nwere ike ịbanye na ngalaba nchịkwa site na iji otu nzere. Mgbe nbanye, ị nwere ike ịhụ ụfọdụ ntọlite okwu n'elu akuku aka ekpe, nke kwesịrị idozi tupu ịmalite iji ya.

Nke a bụ ụfọdụ n'ime usoro iji nweta ndozi, enwere ike idozi nsogbu ọ bụla n'ụzọ dị mfe dịka ha rụtụrụ aka ka esi edozi ya.

Ngụkọta, enwere okwu ntọlite 10 akpọrọ dị ka egosiri na foto dị n'okpuru.

N'ebe a, enweghị m ike igosi otu esi edozi nsogbu ọ bụla, mana m ga-agbalị igosi otu esi edozi otu n'ime nsogbu ahụ dị ka ekwuru na ibe njehie. Ka anyị buru mbipụta mbụ, MYSQL STRICT_ALL_TABLES Ọnọdụ adịghị edobe, ịpị njikọ ahụ ga-enweta ntuziaka maka otu esi edozi nsogbu ahụ.

Yabụ, ka anyị soro ntuziaka ndị ahụ dị ka akọwara na ibe. Mepee ma dezie faịlụ nhazi mysql.

# /etc/my.cnf		[On RedHat]

# sudo vim /etc/mysql/my.conf	[On Ubuntu]

Na-esote, tinye koodu ahụ n'okpuru ngalaba mysqld nke faịlụ conf, ihe anyị na-enweta mgbe ị pịrị na MYSQL STRICT_ALL_TABLES Mode Not Set.

sql_mode	= STRICT_ALL_TABLES
ft_min_word_len	= 3

Mgbe edoziri njehie ọ bụla, ị ga-amalitegharị ọrụ MySQL na Apache iji gosipụta mgbanwe ọhụrụ.

------------ On Red Hat Systems  ------------
# service mysqld restart
# service apache restart


------------ On Ubuntu Systems  ------------
$ sudo service mysql restart
$ sudo service apache2 restart

Mgbe, na-edozi nsogbu niile, ị nwere ike ịbanye n'ime panel ọzọ wee lelee ọnọdụ ahụ, ị ga-ahụ ozi Njikere iji.

Kwụpụ 6: Nchọgharị atụmatụ ndị na-ere ọgwụ

Ị nwere ike ịhụ ụfọdụ njirimara ndị ọrụ dị ka egosiri na foto dị n'okpuru.

Maka ịmepụta akaụntụ onye ọrụ nkịtị, pịa akara ngosi akuku aka ekpe elu wee pịgharịa gaa na ibe ahụ wee pịa Ndị mmadụ. Ugbu a ka ịmepụta onye ọrụ ọhụrụ anyị ga-pịa Mepụta onye ọrụ ọhụrụ.

Kwụpụ 7: Weghachite Paswọdu Admin Phabricator

Ọ bụrụ na incase, ị chefuola paswọọdụ nchịkwa gị ma ịchọrọ ị nwetaghachi ya, naanị soro iwu dị n'okpuru.

# ./bin/auth recover tecmint

Na-esote, detuo koodu ohere enyere wee nweta URL iji nwetaghachi, dị ka egosiri na foto dị n'okpuru.

Nke ahụ bụ naanị ugbu a, anyị etinyela nke ọma ma hazie “Phabricator“ ngwa ọrụ njikwa ọrụ mepere emepe na-enweghị ntụpọ ọ bụla. Enwere m olileanya na gị onwe gị na-edozikwa njehie ọ bụla, ọ bụrụ na ọ bụla mee ka m mara site na nkwupụta, ọ ga-amasị m inyere gị aka.