웹사이트 검색

Phabricator - 강력한 오픈 소스 Linux용 "프로젝트 관리" 도구


Phabricator는 소프트웨어 회사가 더 나은 소프트웨어를 만들고 구축할 수 있도록 돕는 오픈 소스 애플리케이션입니다. 이 애플리케이션은 PHP 언어를 사용하여 구축되었으며 Linux, MacOSX용 Apache 2.0 오픈 소스 라이센스에 따라 사용 가능하며 모든 플랫폼에서 실행될 수 있습니다. Windows에서도 실행할 수 있지만 전적으로 Linux 지원을 기반으로 합니다. Phabricator는 이전에 Facebook에서 사용되었습니다. phabricator의 첫 번째 버전은 코드 검토 및 감사, 버그 추적 등과 같은 많은 기능을 포함하여 facebook에서 구축되었습니다.

gitsvn과 동일한 저장소로 phabricator를 사용할 수 있습니다. 특정 개발 팀 간에 코드를 보호하는 데 사용할 수 있는 여러 개인 정보 보호 설정이 있습니다. 코드를 완성하기 전에 동료의 코드를 검토할 수 있습니다.

모든 사람이 git에 대해 알고 있기를 바랍니다. 그렇지 않다면 사용 방법을 설명하는 아래 GIT 기사를 빠르게 살펴보시기 바랍니다.

  1. GIT를 설치하여 GITHub 리포지토리에 자신만의 프로젝트 만들기

git과 마찬가지로 phabricator에도 많은 기능이 있으며 Facebook, Dropbox, Groupon과 같은 대부분의 유명 회사에서 웹 애플리케이션을 개발하는 데 사용됩니다.

요구사항

Phabricator는 다음 필수 패키지를 사용하여 일반 컴퓨터에서 실행할 수 있습니다. 리소스가 많은 사양은 필요하지 않습니다.

  1. Apache2.2.7 이상
  2. MySQL 및 PHP 5.2 이상
  3. Git 및 일부 PHP 확장.

참고: Phabricator는 전체 도메인(linux-console.net) 또는 하위 도메인(phabricator.linux-console.net)에만 설치할 수 있습니다. 기존 도메인의 특정 경로(예: “linux-console.net/phabricator”)에 설치할 수 없습니다.

1단계: 필수 구성 요소 설치

Ubuntu 및 Redhat 기반 Linux에서 설정에 사용할 수 있는 스크립트가 있습니다. Linux에 익숙하지 않은 경우 이 옵션을 선택하십시오.

  1. RedHat 파생물 – http://www.phabricator.com/rsrc/install/install_rhel-derivs.sh
  2. 우분투 파생물 - http://www.phabricator.com/rsrc/install/install_ubuntu.sh

고급 사용자인 경우 파브리케이터를 실행하려면 LAMP 서버를 설정하기만 하면 됩니다. 자, 이제 RHEL/CentOS 및 Ubuntu/Debian에 Phabricator 설치를 시작하겠습니다.

RHEL/CentOS에서

LAMP 서버를 설치하고 설치하는 동안 일부 PHP 확장을 포함합니다.

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

참고: Ubuntu 기반 배포판에서는 설치 중에 MysQL의 루트 비밀번호를 입력하라는 메시지가 표시됩니다.

2단계: Phabricator 파일 다운로드

위의 모든 항목이 설치되면 이제 설치 디렉토리를 선택하십시오. 여기서는 Apache 디렉토리의 DocumentRoot 아래에 'myprojectapp'이라는 디렉토리를 생성하겠습니다.

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

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

설치하는 경우 일반 사용자로서 쓰기 권한을 얻으려면 Apache 그룹에 현재 사용자(제 경우에는 'tecmint')를 추가해야 합니다. 루트 사용자로 전환한 경우 이 단계를 무시할 수 있습니다.

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 저장소에서 파브리케이터와 해당 종속성을 가져오기 시작하세요.

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단계: Phabricator용 Apache 구성

Ubuntu 기반 배포판에서는 mod_php, mod_rewrite 및 mod_ssl 모듈을 활성화해야 합니다. 설치 중에 이러한 모듈은 대부분 기본적으로 활성화되어 있지만 확인이 필요합니다.

sudo a2enmod rewrite
sudo a2enmod ssl

이러한 모듈이 활성화되면 웹 서버를 다시 시작하여 변경 사항을 반영합니다.

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

다음으로 Apache 구성 파일에 별도의 Virtualhost를 만듭니다.

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

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

파일 하단에 다음 Virtualhost 항목을 추가하고 DocumentRoot 경로를 phabricator 파일의 정확한 위치와 일치하도록 변경합니다.

<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단계: Phabricator용 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 웹 UI 구성

이제 다음 위치에서 웹 UI에 액세스할 수 있지만 관리자 로그인 계정을 만들어야 합니다.

http://phab.tecmintlocal.com/

OR

http://ipaddress

위의 관리자 설정 페이지가 표시되지 않으면 터미널에서 수동으로 관리자 로그인을 생성해야 합니다. 이 단계는 관리자 계정이 정의되지 않아 오류가 발생하는 경우에만 필요합니다.

./bin/accountadmin

관리자 계정이 생성되면 동일한 자격 증명을 사용하여 관리 섹션에 로그인할 수 있습니다. 로그인 후 왼쪽 상단에 일부 설정 문제가 표시되며, 사용을 시작하기 전에 해결해야 합니다.

다음은 수정을 위한 몇 가지 단계입니다. 모든 문제는 해결 방법을 제시하므로 매우 쉽게 해결할 수 있습니다.

아래 이미지와 같이 총 10개의 설정 문제가 언급되어 있습니다.

여기서는 각 문제를 해결하는 방법을 보여드릴 수는 없지만 오류 페이지에 언급된 문제 중 하나를 해결하는 방법을 보여 드리겠습니다. 첫 번째 문제인 MYSQL STRICT_ALL_TABLES 모드가 설정되지 않음을 살펴보겠습니다. 링크를 클릭하면 문제 해결 방법에 대한 지침을 얻을 수 있습니다.

이제 페이지에 설명된 대로 지침을 따르세요. mysql 구성 파일을 열고 편집합니다.

/etc/my.cnf		[On RedHat]

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

다음으로, "MYSQL STRICT_ALL_TABLES 모드가 설정되지 않음"을 클릭하는 동안 얻은 코드를 conf 파일의 mysqld 섹션 아래에 추가합니다.

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단계: Phabricator 기능 탐색

아래 그림과 같이 사용자가 사용할 수 있는 일부 기능을 볼 수 있습니다.

일반 사용자 계정을 만들려면 왼쪽 상단 모서리 아이콘을 클릭한 다음 페이지를 아래로 스크롤한 다음 "사람"을 클릭하세요. 이제 새 사용자를 생성하려면 "새 사용자 생성"을 클릭해야 합니다.

7단계: Phabricator 관리자 비밀번호 복구

만약 관리자 비밀번호를 잊어버렸고 이를 복구하고 싶다면 아래 명령을 따르세요.

./bin/auth recover tecmint

그런 다음 아래 이미지와 같이 제공된 액세스 코드를 복사하고 복구할 URL에 액세스합니다.

지금은 이것이 전부입니다. 우리는 오픈 소스 프로젝트 관리 도구인 "Phabricator"를 아무런 결함 없이 성공적으로 설치하고 구성했습니다. 귀하도 오류가 있는 설정을 하시길 바랍니다. 댓글을 통해 알려주시면 도움을 드리고 싶습니다.

http://phabricator.org/