Phabricator - เครื่องมือ "การจัดการโครงการ" อันทรงพลังแบบโอเพ่นซอร์สสำหรับ Linux
ฟาบริเคเตอร์เป็นแอปพลิเคชันโอเพ่นซอร์สที่ช่วยให้บริษัทซอฟต์แวร์สามารถสร้าง/สร้างซอฟต์แวร์ที่ดีขึ้น ซึ่งสร้างขึ้นโดยใช้ภาษา PHP และพร้อมใช้งานภายใต้ใบอนุญาตโอเพ่นซอร์ส Apache 2.0 สำหรับ Linux, MacOSX และสามารถทำงานได้ในทุกแพลตฟอร์ม มันสามารถทำงานใน windows ได้ แต่มันขึ้นอยู่กับการรองรับ Linux ทั้งหมด Facebook เคยใช้ฟาบริเคเตอร์มาก่อน ฟาบริเคเตอร์เวอร์ชันแรกถูกสร้างขึ้นโดย Facebook พร้อมฟีเจอร์มากมาย เช่น การตรวจสอบและการตรวจสอบรหัส การติดตามข้อบกพร่อง ฯลฯ
เราสามารถใช้ฟาบริเคเตอร์เป็นที่เก็บข้อมูลเช่นเดียวกับ git และ svn มีการตั้งค่าความเป็นส่วนตัวหลายประการเพื่อรักษาโค้ดให้ปลอดภัยสำหรับทีมพัฒนาโดยเฉพาะ เราสามารถตรวจสอบโค้ดของเพื่อนร่วมงานก่อนที่จะสรุปโค้ดได้
ฉันหวังว่าทุกคนจะทราบเกี่ยวกับ git หากไม่ โปรดดูบทความ GIT ด้านล่างนี้ซึ่งจะอธิบายวิธีใช้งาน
- ติดตั้ง GIT เพื่อสร้างโปรเจ็กต์ของคุณเองบน GITHub Repository
เช่นเดียวกับ git ฟาบริเคเตอร์ยังมีฟีเจอร์มากมายและถูกใช้โดยบริษัทยอดนิยมส่วนใหญ่ เช่น Facebook, Dropbox, Groupon เพื่อพัฒนาเว็บแอปพลิเคชันที่นั่น
ความต้องการ
ฟาบริเคเตอร์สามารถทำงานได้ในคอมพิวเตอร์ปกติ โดยมีแพ็คเกจที่จำเป็นดังต่อไปนี้ เราไม่ต้องการข้อกำหนดที่มีทรัพยากรสูง
- Apache2.2.7 หรือสูงกว่า
- MySQL และ PHP 5.2 หรือสูงกว่า
- Git และส่วนขยาย php บางส่วน
หมายเหตุ: สามารถติดตั้งฟาบริเคเตอร์ได้บนทั้งโดเมน (linux-console.net) หรือบนโดเมนย่อย (phabricator.linux-console.net) เท่านั้น คุณไม่สามารถติดตั้งลงในเส้นทางเฉพาะบนโดเมนที่มีอยู่ได้ เช่น “linux-console.net/phabricator”
ขั้นตอนที่ 1: การติดตั้งส่วนประกอบที่จำเป็น
มีสคริปต์สำหรับการตั้งค่าใน Ubuntu และ Linux ที่ใช้ Redhat ให้เลือกตัวเลือกนี้หากคุณไม่คุ้นเคยกับ Linux
- อนุพันธ์ RedHat – http://www.phabricator.com/rsrc/install/install_rhel-derivs.sh
- อนุพันธ์ของ Ubuntu – http://www.phabricator.com/rsrc/install/install_ubuntu.sh
หากคุณเป็นผู้ใช้ขั้นสูง คุณเพียงแค่ต้องตั้งค่าเซิร์ฟเวอร์ LAMP เพื่อเรียกใช้ฟาบริเคเตอร์ เอาล่ะ เรามาเริ่มการติดตั้งฟาบริเคเตอร์บน RHEL/CentOS และ Ubuntu/Debian กันดีกว่า
บน RHEL/CentOS
ติดตั้งเซิร์ฟเวอร์ LAMP และรวมส่วนขยาย php บางส่วนขณะติดตั้ง
yum install mysql-server httpd git php php-mysql php-gd php-curl php-apc php-cli -y
บน Ubuntu/Debian
sudo apt-get install mysql-server apache2 git-core git php5 php5-mysql php5-gd php5-curl php-apc php5-cli -y
หมายเหตุ: บนระบบปฏิบัติการ Ubuntu ระหว่างการติดตั้ง ระบบจะขอให้คุณป้อนรหัสผ่านรูทสำหรับ MysQL
ขั้นตอนที่ 2: การดาวน์โหลดไฟล์ฟาบริเคเตอร์
เมื่อคุณติดตั้งทุกสิ่งข้างต้นแล้ว ให้เลือกไดเร็กทอรีการติดตั้ง ที่นี่ฉันจะสร้างไดเรกทอรีชื่อ 'myprojectapp' ใต้ DocumentRoot ของไดเรกทอรี Apache
mkdir /var/www/html/myprojectapp [On RedHat]
sudo mkdir /var/www/myprojectapp [On Ubuntu]
หากคุณกำลังติดตั้ง ในฐานะผู้ใช้ปกติ คุณจะต้องเพิ่มผู้ใช้ปัจจุบัน (ในกรณีของฉัน 'tecmint') ในกลุ่ม Apache เพื่อขอรับสิทธิ์ในการเขียน ขั้นตอนนี้สามารถละเว้นได้หากคุณเปลี่ยนเป็นผู้ใช้รูท
chown -R tecmint:apache /var/www/html [On RedHat]
sudo chown -R tecmint:www-data /var/www [On Ubuntu]
จากนั้นไปที่ไดเร็กทอรีที่สร้างขึ้นใหม่ เช่น myprojectapp
cd /var/www/html/myprojectapp [On RedHat]
cd /var/www/myprojectapp [On Ubuntu]
ตอนนี้ให้เริ่มดึงฟาบริเคเตอร์และการพึ่งพาจากที่เก็บคอมไพล์อย่างเป็นทางการ
git clone https://github.com/phacility/libphutil.git
git clone https://github.com/phacility/arcanist.git
git clone https://github.com/phacility/phabricator.git
ขั้นตอนที่ 3: กำหนดค่า Apache สำหรับฟาบริเคเตอร์
บนการกระจายบน Ubuntu คุณต้องเปิดใช้งานโมดูล mod_php, mod_rewrite และ mod_ssl ในระหว่างการติดตั้งโมดูลเหล่านี้ส่วนใหญ่เปิดใช้งานตามค่าเริ่มต้น แต่เราต้องยืนยัน
sudo a2enmod rewrite
sudo a2enmod ssl
เมื่อเปิดใช้งานโมดูลเหล่านี้แล้ว ให้รีสตาร์ทเว็บเซิร์ฟเวอร์ครั้งถัดไปเพื่อแสดงการเปลี่ยนแปลง
sudo /etc/init.d/apache2 restart [On Ubuntu]
จากนั้นสร้าง Virtualhost แยกต่างหากในไฟล์กำหนดค่า Apache ของคุณ
vi /etc/httpd/conf/httpd.conf [On RedHat]
sudo nano /etc/apache2/sites-available/phabricator.conf [On Ubuntu]
เพิ่มรายการ Virtualhost ต่อไปนี้ที่ด้านล่างของไฟล์ และเปลี่ยนเส้นทาง DocumentRoot เพื่อให้ตรงกับตำแหน่งที่แน่นอนของไฟล์ฟาบริเคเตอร์
<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>
บน Ubuntu คุณต้องเปิดใช้งานรายการ virtualhost ที่สร้างขึ้นใหม่โดยใช้คำสั่งต่อไปนี้ สำหรับระบบที่ใช้ RedHat ไม่จำเป็นต้องเปิดใช้งานอะไรเลย
sudo a2ensite phabricator.conf
สุดท้ายให้รีสตาร์ทบริการ Apache เพื่อให้สอดคล้องกับการเปลี่ยนแปลงใหม่
service httpd restart [On RedHat]
sudo /etc/init.d/apache2 restart [On Ubuntu]
ขั้นตอนที่ 4: กำหนดค่า MySQL สำหรับฟาบริเคเตอร์
ตอนนี้ถึงเวลากำหนดค่า MySQL แต่ก่อนที่จะดำเนินการตั้งค่า ตรวจสอบให้แน่ใจว่า MySQL ของคุณกำลังทำงานอยู่และคุณสามารถเชื่อมต่อได้ เพื่อให้คุณสามารถโหลดการตั้งค่า mysql ลงไปได้
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
จากนั้น รันสคริปต์อัปเกรดพื้นที่จัดเก็บข้อมูลเพื่อโหลดสคีมาฐานข้อมูลลงไป ขณะประมวลผล ระบบจะแจ้งให้คุณกด 'y' เพื่อดำเนินการต่อ ซึ่งจะใช้เวลาเพียงเล็กน้อยในการตั้งค่าสำหรับการตั้งค่าสคีมาข้อมูลให้เสร็จสิ้น
./bin/storage upgrade --user root --password mjackson
เมื่อเพิ่มโครงร่างลงใน mysql แล้ว ให้เริ่มบริการใหม่เพื่อใช้การตั้งค่าใหม่
service mysql restart
sudo service mysql restart
ขั้นตอนที่ 5: การกำหนดค่า Phabricator Web UI
ตอนนี้คุณสามารถเข้าถึง UI ของเว็บได้ที่ตำแหน่งต่อไปนี้ แต่เราจำเป็นต้องสร้างบัญชีเข้าสู่ระบบของผู้ดูแลระบบ
http://phab.tecmintlocal.com/
OR
http://ipaddress
หากหน้าการตั้งค่าผู้ดูแลระบบด้านบนไม่แสดงขึ้นมา เราจำเป็นต้องสร้างการเข้าสู่ระบบของผู้ดูแลระบบด้วยตนเองจากเทอร์มินัล ขั้นตอนนี้จำเป็นเท่านั้น หากในกรณีที่เราได้รับข้อผิดพลาด เนื่องจากไม่ได้กำหนดบัญชีผู้ดูแลระบบ
./bin/accountadmin
เมื่อสร้างบัญชีผู้ดูแลระบบแล้ว คุณสามารถเข้าสู่ระบบในส่วนผู้ดูแลระบบได้โดยใช้ข้อมูลประจำตัวเดียวกัน หลังจากเข้าสู่ระบบ คุณจะเห็นปัญหาการตั้งค่าบางอย่างที่มุมซ้ายบน ซึ่งจะต้องแก้ไขก่อนเริ่มใช้งาน
ต่อไปนี้เป็นขั้นตอนในการแก้ไขปัญหา แต่ละปัญหาสามารถแก้ไขได้อย่างง่ายดายตามที่พวกเขาได้ชี้วิธีการแก้ไข
โดยรวมแล้วมีปัญหาการตั้งค่า 10 ข้อที่กล่าวถึงดังที่แสดงในภาพด้านล่าง
ในที่นี้ ฉันไม่สามารถแสดงวิธีแก้ปัญหาแต่ละปัญหาได้ แต่จะพยายามแสดงวิธีแก้ปัญหาอย่างใดอย่างหนึ่งตามที่กล่าวไว้ในหน้าข้อผิดพลาด เรามาเริ่มประเด็นแรกกันเลย MYSQL STRICT_ALL_TABLES Mode Not Set การคลิกลิงก์จะได้รับคำแนะนำในการแก้ปัญหา
ดังนั้น ให้ทำตามคำแนะนำตามที่อธิบายไว้ในหน้านี้ เปิดและแก้ไขไฟล์การกำหนดค่า mysql
/etc/my.cnf [On RedHat]
sudo vim /etc/mysql/my.conf [On Ubuntu]
จากนั้น ให้เพิ่มโค้ดต่อท้ายส่วน mysqld ของไฟล์ conf ซึ่งเป็นสิ่งที่เราได้รับจากการคลิกที่ “MYSQL STRICT_ALL_TABLES Mode Not Set“
sql_mode = STRICT_ALL_TABLES
ft_min_word_len = 3
หลังจากแก้ไขข้อผิดพลาดแต่ละข้อแล้ว คุณต้องรีสตาร์ทบริการ MySQL และ Apache เพื่อให้สอดคล้องกับการเปลี่ยนแปลงใหม่
------------ On Red Hat Systems ------------
service mysqld restart
service apache restart
------------ On Ubuntu Systems ------------
sudo service mysql restart
sudo service apache2 restart
หลังจากแก้ไขปัญหาทั้งหมดแล้ว คุณสามารถเข้าสู่ระบบแผงควบคุมอีกครั้งและตรวจสอบสถานะ คุณจะเห็นข้อความ “พร้อมใช้งาน”
ขั้นตอนที่ 6: การเรียกดูคุณสมบัติฟาบริเคเตอร์
คุณสามารถดูคุณสมบัติบางอย่างที่ผู้ใช้สามารถใช้ได้ตามที่แสดงในภาพด้านล่าง
สำหรับการสร้างบัญชีผู้ใช้ปกติ ให้คลิกที่ไอคอนมุมซ้ายบน จากนั้นเลื่อนหน้าลง จากนั้นคลิกที่ “บุคคล“ ตอนนี้เพื่อสร้างผู้ใช้ใหม่ เราต้องคลิกที่ “สร้างผู้ใช้ใหม่“
ขั้นตอนที่ 7: กู้คืนรหัสผ่านผู้ดูแลระบบฟาบริเคเตอร์
หากในกรณีที่คุณลืมรหัสผ่านผู้ดูแลระบบและต้องการกู้คืน เพียงทำตามคำสั่งด้านล่าง
./bin/auth recover tecmint
จากนั้น คัดลอกรหัสการเข้าถึงที่กำหนดและเข้าถึง URL เพื่อกู้คืน ดังที่แสดงในภาพด้านล่าง
เพียงเท่านี้ เราได้ติดตั้งและกำหนดค่า “ฟาบริเคเตอร์” ซึ่งเป็นเครื่องมือการจัดการโครงการแบบโอเพ่นซอร์สเรียบร้อยแล้ว โดยไม่มีข้อบกพร่องใดๆ ฉันหวังว่าคุณจะตั้งค่าให้มีข้อผิดพลาดเช่นกัน หากมีแจ้งให้เราทราบผ่านความคิดเห็น ฉันยินดีที่จะช่วยเหลือคุณ
http://phabricator.org/