먼저 선행되어야 할 작업 들이 있다.
이 글에서 gerrit은 gerrit 내장 H2 DB 를 사용해 구성된다.
그리고 java, git, apache2 package 는 미리 설치되어 있어야 한다.
$ sudo apt-get install git
$ sudo apt-get install apache2
$ sudo apt-get install sun-java6*
- java 는 위 방법 대로 설치하면 openjdk6 package 가 설치된다. sun-java-jdk6 패키지와 다른 점이 있으니, 잘 판단해서 설치하기 바란다. 필자는 android 개발이 목적이라 sun package로 설치했는데, 현재 apt-get 으로 install 불가하다. 설치 방법은 android 란에 공지되어 있다.
그럼 시작하겠다.
- gerrit 다운로드 먼저 gerrit 을 다운받자. $ wget http://gerrit.googlecode.com/files/gerrit-2.4.2.war 이 파일 하나로 구성되어 있다.
- gerrit 관리용 계정 생성. 이 부분은 필요없다면 하지 않아도 무방하다. 하지만 관리 계정을 따로 두는 것이 여러모로 깔끔하다. $ sudo adduser gerrit2 $ su gerrit2
- apache2 설정. gerrit 을 사용하려면 apache2 의 proxy 기능을 enabled 시켜야 한다. $ sudo apt-get install libapache2-mod-proxy-html $ sudo a2enmod proxy $ sudo a2enmod proxy_http $ sudo service apache2 restart enabled 시켰던 모듈을 다시 disabled 시키려면 a2dismod 하면 된다. proxy 와 proxy_http 는 dependency 가 있으니 켜고 끌 때 메시지를 잘 읽도록 하자.
- gerrit 설치. $ mkdir your/gerrit/path $ mkdir your/gerrit/install/path $ mv gerrit/downloaded/path/gerrit-2.4.2.war your/gerrit/path/gerrit.war $ cd your/gerrit/path $ java -jar ./gerrit.war init -d your/gerrit/install/path 이렇게 하면 설치과정이 시작된다. 설치 과정이라고 해봐야 몇 가지 질문하는 것 밖에 없다. Database username 을 물어보는데, 그냥 Enter 치면 password 를 물어본다. 입력해주자. Authentication method 는 http 로 진행할 것이므로 http 라고 입력하면 된다. Email 관련 해서는 각자 사용하는 메일의 smtp 서버정보와 계정 정보를 입력하면 된다. 그 외에는 기본으로 전~ 부 Enter!!!!
- apache2 & gerrit 설정. 우선 gerrit 을 login 할 계정정보를 생성하자. $ su gerrit2 $ htpasswd -c your/gerrit/install/path/etc/passwords "admin" 앞으로 gerrit 접속 할 때는 이 파일의 정보를 이용해 접속하게 만들 것이다. $ sudo vi /etc/apache2/sites-available/gerrit2
<VirtualHost *:8081> ServerName localhost ProxyRequests Off ProxyVia Off ProxyPreserveHost On <Proxy *> Order deny,allow Allow from all </Proxy> <Location /login/> AuthType Basic AuthName "Gerrit Core Review" Require valid-user AuthUserFile your/gerrit/install/path/etc/passwords </Location> ProxyPass / http://127.0.0.1:8080/ </VirtualHost>
위에서 각 포트가 중요한데, VirtualHost 에서는 8081 포트를, Proxy 에서는 8080 포트를 사용한다. 추가로 sites-enabled 디렉토리에 동적 링크도 생성한다. $ cd /etc/apache2/sites-enabled $ sudo ln -s ../sites-available/gerrit2 ./001-gerrit2 apache2 에서는 기본으로 80번 포트만 열려있으므로, port 설정도 해준다. $ sudo vi /etc/apache2/ports.confNameVirtualHost *:8081 Listen 8081
위와 같이 추가하면 된다. 마지막 단계다!! $ vi your/gerrit/install/path/etc/gerrit.config [gerrit] ....... canonicalWebUrl = http://your_ip:8081/ - 라인 추가. [httpd] listenUrl = proxy-h-tp://*:8080 - 라인 수정. - 재시작!! $ su gerrit2 $ cd your/gerrit/install/path $ ./bin/gerrit.sh restart
이제 웹에서 확인해보면 gerrit 으로 진입되는 것을 알 수 있다.
내가 헤멘 이유는 db 때문이었는데 postgresql 을 사용했을 때는 git 디렉토리에 All-Projects.git repo 가 생성되지 않았다. mysql을 사용했을 때도 마찬가지였는데, google groups 에 질문해보니...
"H2 쓰면 바로 생기던데? ㅇㅇ" 라는 답변이 올라와서 시도해보니 바로 되더라...
이것 때문에 하루 날렸다 ㅋ
...하얗게 불태웠어
반응형
'Program' 카테고리의 다른 글
[PostgreSQL] 간단 사용법 (0) | 2013.06.10 |
---|---|
Code Review - Gerrit (Install) (0) | 2013.05.23 |
Balsamiq : 빠른 UI 디자인을 위한 도구 (0) | 2013.04.04 |
이미지 크기에 맞게 새창띄우기 (0) | 2012.12.27 |
it관련 책 배포 사이트 (0) | 2012.12.14 |