2014년 12월 5일 금요일

Redmine2를 Apache2 환경하에 구축하기

개요

Redmine은 ruby-on-rails-application이므로, 혹여 apache가 80/443포트를 점거하고 있는 상황하에 있어서 기본포트의 http/https를 이용하려 할 경우는 apache와의 연계가 필요함

전제

ImageMagick
ImageMagick-devel
mysql
mysql-devel
ruby
ruby-devel
rake

상기 모듈들이 인스톨된 상태일 필요가 있음.(그냥 redmine설치에만 필요)

redmine의 인스톨

아래 참고자료 페이지를 참조.
http://www.redmine.org/projects/redmine/wiki/redmineinstall

순서대로 인스톨을 진행하면 큰 문제없이 ruby서버를 통한 기동까지 도달할 수 있음.

redmine 의 passenger모듈을 통한 rails<->apache의 연계

아래 참고자료 페이지를 참조.
http://redmine.jp/tech_note/apache-passenger/
redmine유저로 아래 커맨드를 순서대로 실행

아래의 명령 실행시, AWS기준으로 micro인스턴스에서는 메모리가 부족하여 빌드에 실패할 수가 있으니, 인스턴스를 large이상으로 일시적으로 설정하여 인스톨을 진행할것.

gem update
gem install passenger
passenger-install-apache2-module 
(이 과정에서 특정 패스에 대한 권한이 요구됨. root로 일시적으로 설치를 진행하거나, 인스톨러가 권한이 필요한 패스를 알려주므로 해당 패스에 대한 접근권한을 일시적으로 설치를 진행할 유저가 가지게끔 설정해 줄 필요가 있음)

이후에 passenger-install-apache2-module의 마지막에서 알려주는대로 아파치의 설정을 실시함.
구체적으로는 모듈을 로드하는 부분을 추가하고, virtual host설정을 실시함.

이때 주의해야할것이 virtualhost의 documentRoot인데
예를들어 /??/redmine에 redmine의 소스가 배치되었다고 한다면
documentRoot로 지정되어야할 경로는
/??/redmine/public일 필요가 있음.

참고자료

http://www.redmine.org/projects/redmine/wiki/redmineinstall
http://www.redmine.org/boards/2/topics/5254?r=40570
http://redmine.jp/tech_note/apache-passenger/

트러블슈팅

https://gist.github.com/satzz/261b4cba289a4b2ff3a9
mysql, RMagick등의 관련의 에러가 발생할시 각 서버환경하의 패키지 매니저(yum, apt-get 등)를 통해 전제에 적혀있는 모듈이 인스톨 되어있는지 확인 및 시험을 해볼것.

댓글 없음:

댓글 쓰기