우분투 서버에 Redmine 설치
이런저런잡다구리/LinuxHeaven10.04 LTS, LAMP, OpenSSH 까지 설치한 상태
우분투 설치 마무리
# sudo apt-get update
# sudo apt-get upgrade
# sudo apt-get dist-upgrade
재부팅 후 빌드도구 및 unzip, zlib, openssl 헤더 설치
# sudo apt-get install build-essential unzip zlib1g-dev libssl-dev
덤으로 phpMyAdmin도 설치
# sudo apt-get install phpmyadmin
# wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p334.zip
# unzip ruby-1.8.7-p334.zip
# ./configure
# make
# sudo make install
설치 확인
루비 zlib 설치. (꼭 필요한지는 확인 못함.)
# sudo apt-get install libzlib-ruby
rubygem 1.3.6 설치. 레드마인은 gem 1.5 이상에서 오류발생함. 업데이트 자제요!
-->> 막힘. 이걸로.
레일즈를 비롯한 루비 젬 설치. 도큐멘트 없이 깔자. (이 작업은 몇 분 걸림..)
# sudo mkdir /ruby-apps
# cd /ruby-apps
# sudo wget http://rubyforge.org/frs/download.php/71421/redmine-0.9.5.tar.gz
# sudo tar -xzvf redmine-0.9.5.tar.gz
mysql에 redmine 이라는 데이터베이스 생성.
CREATE DATABASE `redmine` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
database.yml 파일 수정
production:
# sudo ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock
또는 database.yml 의 adapter 밑에 다음 줄 추가.
(참고 : http://hervalicio.us/blog/2007/07/07/no-such-file-or-directory-tmpmysqlsock/)
# cd .. (레드마인 디렉토리로 이동)
# RAILS_ENV=production rake generate_session_store
# RAILS_ENV=production rake db:migrate
# RAILS_ENV=production rake redmine:load_default_data <== 언어는 ko를 입력한다
# RAILS_ENV=production rake config/initializers/session_store.rb
레드마인 구동
# ruby script/server webrick -e production
( 이 때 -d를 붙여 ruby script/server webrick -d -e production 라고 하면 디태치된다. )
( 데몬구동 스크립트 만들기 귀찮아서 그냥 screen 을 써서 사용할 예정임 )
이제 3000번 포트로 접속해보면 레드마인이 나타남. 초기 로그인은 admin/admin
http://my-ubuntu:3000
형상관리 연동을 위해 subversion, git 설치
# sudo apt-get install subversion git-core
레드마인 설정에서 저장소 인코딩값에 UTF-8,EUC-KR 을 넣어주면 한글주석도 제대로 표시된다.
플러그인 설정. 먼저 울트라바이올렛 하이라이터.
http://www.redmine.org/plugins/redmine_ultraviolet
레드마인에 내장된 CodeRay도 있기는 하지만... 파스칼 코드가 별로다.
먼저 울트라바이올렛을 깔고
sudo apt-get install libonig-dev
sudo gem install ultraviolet
설치는 다음과 같이
script/plugin install git://github.com/epitron/redmine_ultraviolet.git
위 과정을 통해 redmine_ultraviolet 디렉토리가 vendor/plugins/ 로 복사된다.
레드마인 재구동하면 계정정보에 Ultraviolet Theme 가 나타남.
근데 도대체 어케 활성화 시키는거야~!!
--->> 저장소의 소스보기가 영향받는다.
추가 #1
NAS에 이미 운용중인 레드마인 DB를 사용하려면?? 일단 NAS의 mysql 을 다른 계정으로 접속할 수 있도록 해준다.
database.yml 을 적당히 편집, host, username, password 를 NAS의 해당 정보로 변경한다.
로컬 네트웍의 NAS 이름을 못찾네... 아이피를 고정하기 어려운 상황이라... /etc/hosts 에 적당히 추가.
재구동하면 기존 운용중인 정보를 그대로 사용 가능.
로컬네트워크상의 컴퓨터를 이름으로 검색하는 방법
http://oranke.tistory.com/172
추가 #2
NAS에서는 잘 동작하는데... 상위 프로젝트에서 작업내역 볼 때 오류가 나오네.
http://www.redmine.org/issues/5693 참고. mysql 드라이버를 재설정하자.
# sudo gem uninstall ruby-mysql
-->> 잘 안되면 이렇게
# curl -O https://github.com/downloads/tmtm/ruby-mysql/ruby-mysql-2.9.3-beta.tar.gz
# cd ruby-mysql-2.9.3-beta/
2011.5.25
1.1.3 으로 업그레이드.
참조 : http://www.redmine.org/projects/redmine/wiki/RedmineUpgrade
먼저 기존 DB의 백업.
# /usr/bin/mysqldump -u <username> -p<password> <redmine_database> | gzip > /path/to/backup/db/redmine_`date +%y_%m_%d`.gz
1.0 이상의 레드마인은 i18n 0.4.2 가 필요하다. 설치하자.
# sudo gem install i18n -v 0.4.2
/ruby-apps 로 이동, 최신 버전을 받아 압축 해제.
# cd /ruby-apps
# cp ../redmine/files/* ./files/
# cp ../redmine/config/database.yml ./config/
# cp ../redmine/vendor/plugins/redmine_ultraviolet ./vendor/plugins/ -r
레드마인 설정
# RAILS_ENV=production rake config/initializers/session_store.rb
위의 명령이 안먹히면 이렇게...
# RAILS_ENV=production rake generate_session_store
# RAILS_ENV=production rake db:migrate
플러그인도 깔아줬으니 이것도..
일단 포트를 변경해 3001 에서 테스트.
# ruby script/server -e production -p 3001
MySQL 의 Interactive_timeout 문제로 인해 8시간 이상 방치한 레드마인이 더이상 동작하지 않는 문제가 있다.
하지만 이 값을 늘려주는 것은 그다지 좋지 않은 방법인듯 하다. DB연결이 끊기기 전에 레드마인이 재구동되는 것이 나을 듯.
레드마인이 올라앉은 WEBrick 서버가 데몬모드로 동작할 때 pgrep 을 써서 이 녀석의 PID를 얻어 정지시키는 방법
http://www.alecjacobson.com/weblog/?p=28
위 내용응 응용, 적절한 스크립트를 작성하고 crontab 으로 돌려주는 편이 좋겠다.
/ruby-apps/redmine/restart.sh
/ect/crontab 을 관리자 권한으로 수정. 다음 내용을 적어넣는다.
좀 무식해 보이기는 하지만... 일단 넘어가자.
하위 프로젝트를 만들었을 때 일감에 대한 gantt 차트를 출력하면 최상위에서만 제대로 보이는 문제가 보임.
"redmine gantt subproject" 로 검색. 패치가 있다.
http://www.redmine.org/issues/6476
다운로드 후 패치 진행
# cd /ruby-apps/redmine
# patch -p0 < gantt_filters.patch
패치하면 잘 동작한다.