CentOS 5.x + Redmine 2.x
이슈관리를 위하여 레드마인을 설치하려고 보니 2.x 가 최신이네요
최신버전을사용하려면 상위버전의 ruby가 필요하고 또 다른것도 좀 있어야 합니다.
설치순서는 ruby > rubygems > rails > redmine 의 순서로 설치.
1. Download ruby source
wget http://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7.tar.gz
tar -zxvf ruby-1.8.7.tar.gz
2. Install dependencies
sudo yum install gcc
sudo yum install gcc-c++
sudo yum install zlib-devel
sudo yum install openssl-devel
sudo yum install readline-devel
sudo yum install sqlite3-devel
3. Build ruby from source
cd ruby-1.8.7
./configure --with-openssl-dir=/usr/lib64/openssl
make
sudo make install
4. Download rubygems source
wget http://rubyforge.org/frs/download.php/69365/rubygems-1.3.6.tgz
tar -zxvf rubygems-1.3.6.tgz
cd rubygems-1.3.6
sudo ruby setup.rb
5. Install gems
sudo gem install rake
sudo gem install rails
sudo gem install mysql2
6. Install Redmine
아래 문서를 따라서 차근차근 진행합니다.
http://www.redmine.org/projects/redmine/wiki/RedmineInstall
트러블슈팅
1) bundle install --without development test
>>> 오류 발생 rmagick, postgresql, sqlite 등을 사용하지 않아서 아래처럼 제거하고 설치
`bundle install --without development test rmagick`
`bundle install --without development test postgresql sqlite`
2) ruby 위치를 못찾아서 'ln -s /설치위치 /usr/bin/ruby' 로 링크해 줌
나머지는 매뉴얼대로 설치 진행.
standalon 구동방식) 서버를 재시작해도 레드마인이 구동되기 위한 Init script 적용
/etc/init.d/redmine 파일의 내용
#!/bin/bash
#
# chkconfig: - 16 84
# description: Start up Redmine
#
# processname: redmine
# config: /etc/sysconfig/redmine
# source function library
. /etc/rc.d/init.d/functions
# Get network config
. /etc/sysconfig/network
[ "${NETWORKING}" = "no" ] && exit 0
# Defaults
DAEMON_HOME=/usr/local/redmine
DAEMON_ARGS="-e production -d"
# Daemon
NAME=redmine
RUBY=$(which ruby)
APP_PIDFILE=$DAEMON_HOME/tmp/pids/server.pid
DAEMON_PIDFILE=/var/run/$NAME.pid
DAEMON_LOCKFILE=/var/lock/subsys/$NAME
start() {
echo -n $"Starting ${NAME}: "
cd $DAEMON_HOME
#redmine 2.x 인경우
$RUBY script/rails server webrick $DAEMON_ARGS
#redmine 1.x 라면 아래의 구동스크립트 사용
#$RUBY script/server webrick $DAEMON_ARGS
sleep 2
status -p $APP_PIDFILE &> /dev/null && echo_success || echo_failure
RETVAL=$?
if [ $RETVAL -eq 0 ]; then
touch $DAEMON_LOCKFILE
cat $APP_PIDFILE > $DAEMON_PIDFILE
fi
echo
}
stop() {
echo -n $"Shutting down ${NAME}: "
killproc -p $DAEMON_PIDFILE
RETVAL=$?
[ $RETVAL -eq 0 ] && /bin/rm -f $DAEMON_LOCKFILE $DAEMON_PIDFILE
echo
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
status -p $DAEMON_PIDFILE $NAME
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart|status}" >&2
exit 3
;;
esac
위의 redmine 파일을 /etc/init.d/ 디렉토리 안에 넣고 아래의 순서를 따른다.
chmod +x /etc/init.d/redmine
chkconfig --add redmine
chkconfig redmine on
/etc/init.d/redmine start
아파치 연동방식) 가상호스트로 구동시킬 때
passenger 설치하고 아파치 모듈설치
gem install passenger
passenger-install-apache2-module
/etc/httpd/conf.d/redmine.conf 파일추가 후 아파치 재 시작
LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-3.0.18/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-3.0.18
PassengerRuby /usr/bin/ruby
<VirtualHost *:80>
ServerName redmine.abydos.co.kr
# 레드마인이 설치된 디렉토리 안의 public 디렉토리를 지정
DocumentRoot /opt/webRoot/redmine/public
<Directory /opt/webRoot/redmine/public>
# This relaxes Apache security settings.AllowOverride all
# MultiViews must be turned off.
Options -MultiViews
</Directory>
ErrorLog "|/usr/sbin/rotatelogs /etc/httpd/logs/redmine-error.%Y-%m-%d.log 86400" CustomLog "|/usr/sbin/rotatelogs /etc/httpd/logs/redmine-access.%Y-%m-%d.log 86400" "%h %l %u %t %D \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""
</VirtualHost>
나눔고딕폰트로 변경)
나눔고딕으로 스타일 적용하려면
설치디렉토리안의 public/stylesheets/application.css 파일을 아래와 같이 수정
css 파일의 맨위에 아래 내용을 삽입하고
@import url('http://api.mobilis.co.kr/webfonts/css/?fontface=NanumGothicWeb');
원하는 부분에서 아래처럼 사용
font-family: 'NanumGothicWeb'
플러그인)
http://www.redmine.org/projects/redmine/wiki/Plugins
백업 및 복구, 데이터 이전)
다른 서버의 레드마인을 이전하거나, 장애에 대비하여 백업할때를 위하여 스크립트를 작성하고 cron으로 등록.
참고 : http://www.redmine.org/projects/redmine/wiki/HowTo_Migrate_Redmine_to_a_new_server_to_a_new_Redmine_version
고쳐서 사용중인 스크립트(git 대신 일자별로 백업되게 변경)
crontab -l
0 2 * * * /root/redmine/redmine_bak
마이그레이션) 버전이 다른 레드마인을 업그레이드 하는 경우 아래의 과정 필수
http://www.redmine.org/projects/redmine/wiki/RedmineUpgrade
[root@localhost redmine]# rake generate_secret_token
[root@localhost redmine]# rake db:migrate RAILS_ENV=production
[root@localhost redmine]# rake redmine:plugins:migrate RAILS_ENV=production
[root@localhost redmine]# rake tmp:cache:clear
[root@localhost redmine]# rake tmp:sessions:clear
[root@localhost redmine]# /etc/init.d/httpd restart
시작페이지를 위키로 바꾸고 싶을 경우)
설치된 디렉토리안의 app/controllers/welcome_controller.rb 파일을 수정
@news = News.latest User.current
@projects = Project.latest User.current
to
@news = News.latest User.current
@projects = Project.latest User.current
redirect_to :controller => 'projects', :action => 'show', :id => '이동시킬프로젝트아이디/wiki'
'오픈소스SW' 카테고리의 다른 글
오픈소스SW 라이선스 LGPL 바로알기 (8) | 2013.10.24 |
---|---|
공개SW 클라우드 플랫폼 (0) | 2012.07.28 |
MP4Box in CentOS 6.x 64Bit (0) | 2012.05.18 |
오픈소스SW 라이선스 - 서비스 사업자가 알아야하는 AGPL (0) | 2012.02.15 |
웹브라우저를 선택할 자유 (0) | 2011.10.28 |