2014년 10월 21일 화요일

Phabricator 설치

포프님의 유튜브 영상을 통해서 phabricator 라는 협업 툴을 알게 되었고, 회사에서 설치해 봤었습니다. ( 그다지 호응은 없었지만... )

설치 과정을 간단히 기록으로 남겨두기 위해 집에서 virtualbox 를 이용해 가상 머신 위에서 다시 설치해 봤습니다.

OS 는 Ubuntu Server 14.04 를 기준으로 xubuntu-desktop 을 추가로 설치하고 진행했습니다.

  1. Ubuntu Server 설치

    • 우선 우분투 서버 64 비트 이미지를 받아 가상 머신 위에 설치 했습니다.

    • 그리고 apt-get install xubuntu-desktop 으로 xubuntu 설치를 진행.
      ( 14.04 이후로 xrdp 원격 접속 세션 매니저로 xfce4 를 추천하는 글이 많았습니다. )

    • 다음 몇 가지 패키지를 추가로 설치했습니다. ( 취향 따라.. )
      virtualbox guest addon , gvim

      회사에서 설치할 때는 ssh 서버와 원격 데스크톱 셋팅 했는데, xrdp 를 설치하고 정상적으로 원격 접속을 하기 위해서 다음 링크에 나오는데로 적절하게 .xsession 파일을 생성하고 서비스를 재시작해 주어야 합니다.
      http://c-nergy.be/blog/?p=5305
  2. phabricator 설치

    • phabricator 설치는 다음 링크를 참고로 해서 진행 했습니다.
      http://99percentcomplete.com/linux/installing-phabricator-ubuntu/
    • prerequisites
      mysql-server , nginx , php5-cli , php5-fpm , php-apc , git
      php5-mysql , phpmyadmin , php5-curl , subversion

      회사에서 테스트 설치 해봤었을 때는 mysql 대신 mariadb 를 설치해도 무방했었습니다. 이번에는 그냥 링크 글에 나오는대로 mysql 로 설치했습니다.
    • create local reposit directory
      기존 외부에 사용하던 저장소를 연결만 할 것이라면 필요 없는 과정 같습니다.
    • 이제 본격적으로 phabricator 를 설치 합니다.
      mkdir -p /opt/phabricator
      cd /opt/phabricator
      git clone git://github.com/facebook/libphutil.git
      git clone git://github.com/facebook/arcanist.git
      git clone git://github.com/facebook/phabricator.git

    • 일단 웹서비스를 멈추어 줍니다.

    • 링크에 나오는데로 /etc/nginx/sites-available/phabricator 파일을 만들고 다음 내용을 적어 줍니다.
      2 번째 줄에 your.domain.com 부분은 적절하게 자신이 사용하는 도메인 명을 적어주면 되는데 공식 도메인명을 사용하기 보다는 hosts 파일을 이용하는 경우가 많을 것이라고 생각됩니다.
      특정 포트를 사용하고 싶다면 listen 8080; 식으로 2 번째 줄에 추가해 줍니다.
    • 작성한 phabricator 파일의 심볼릭 링크를 /etc/nginx/sites-enabled 아래에 만들어줍니다. (기본 사이트에 대한 링크는 삭제합니다.)

    • /etc/php5/cli/php.ini 파일에서 시간 지역을 지정해 줍니다.
      ;date.timezone = 으로 주석이 되어있는 것을
      date.timezone = Asia/Seoul 로 설정해 줍니다.
      ( vi  의 경우 찾기 명령은 명령 모드에서 / 치고 찾고자 하는 단어 입력 입니다. )
    • /etc/php5/fpm/php.ini 파일 제일 하단에 다음 내용을 추가합니다.
      apc.stat = off
    • 다음 내용으로 /etc/nginx/sites-available/phpmyadmin 파일을 만듭니다.
      그리고 위에서와 마찬가지로 /etc/nginx/sites-enabled 아래에 심볼릭 링크를 만들어 줍니다.
    • 링크 페이지 순서와는 조금 다르게 mysql 에 대한 설정값을 미리 셋팅해 줍니다.
      • ./bin/config set mysql.host 127.0.0.1
      • ./bin/config set mysql.port 3306
      • ./bin/config set mysql.user root
      • ./bin/config set mysql.pass password
    • 다음을 실행시켜서 database schema 를 만들어 줍니다.
      • ./bin/storage upgrade
    • /etc/mysql/my.cnf 파일에서 [mysql] 부분을 찾아서 다음 내용을 추가 합니다.
      • sql-mode = STRICT_ALL_TABLES
    • base-uri 를 설정해 줍니다.
      • ./bin/config set phabricator.base-uri 'http://XXXX.com'
      • 자신 혹은 팀(회사)에서 지정한 도메인명을 적어줍니다.
    • /etc/php5/fpm/pool.d/www.conf 파일에서 다음 내용을 수정해줍니다.
      • 원래 내용
        listen = /var/run/php5-fpm.sock
      • 변경 내용
        listen = 127.0.0.1:9000
    • 터미널에 다음 명령을 입력해서 서비스를 시작시킵니다.
      • service php5-fpm start
      • service nginx start
    • 여기까지 했으면 일단 다음과 같이 어드민 계정 설정 페이지가 뜨는 것을 볼 수 있습니다.
    • 몇 가지 추가 적인 사항들은 다음 글에서 정리하도록 하겠습니다.

댓글 없음:

댓글 쓰기