티스토리 뷰


레드마인(Redmine) 설치 & DB 마이그레이션


Ruby 수동 설치

레드마인 3.0 이상 부터는 ruby 1.9.2 이상을 권장한다. 우분투 15.04 저장소의 ruby 버전이 낮으니 Ruby 홈페이지에서 적당한 버전을 찾아 수동 설치하자.

$ sudo wget https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.3.tar.gz -P /usr/local/src/
$ sudo tar -xvf /usr/local/src/ruby-2.2.3.tar.gz -C /usr/local/src/
$ cd /usr/local/src/ruby-2.2.3
$ sudo ./configure
$ sudo make && sudo make install

아래와 같이 ruby -v 했을 때 설치한 버전이 잘 나타나면 성공

$ ruby -v
ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-linux]


Rubygems 수동 설치

gem 들을 설치해주는 rubygems도 설치해야 한다. apt-get으로 설치하면 의존성 때문에 낮은 버전에 ruby가 다시 설치되니 rubygems도 수동 설치하자. 마찬가지로 rubygems 홈페이지에서 적당한 버전을 찾아서 설치

$ sudo wget https://rubygems.org/rubygems/rubygems-2.4.8.tgz -P /usr/local/src/
$ sudo tar -xvf /usr/local/src/rubygems-2.4.8.tgz -C /usr/local/src/
$ sudo ruby /usr/local/src/rubygems-2.4.8/setup.rb

아래와 같이 gem -v 했을 때 설치한 버전이 잘 나타나면 성공

$ gem -v
2.4.8


DB 마이그레이션

제타위키 - 미디어위키 이전과 크게 다르지 않다. 링크 참조

CentOS $ mysqldump -uroot -p --databases redmine > redmine.sql
Ubuntu $ mysql -uroot -p redmine < redmine.sql


레드마인 파일 설치

본문은 레드마인 공식 홈페이지의 Installing Redmine 이다.

레드마인 다운로드 페이지에서 적당한 버전의 링크를 따서 wget으로 다운로드. 설치는 이전의 mediaWiki와 phpMyAdmin과 같은 /home/official에 한다.

$ wget http://www.redmine.org/releases/redmine-3.1.0.tar.gz -P /home/official/src/
$ tar -xvf /home/official/src/redmine-3.1.0.tar.gz -C /home/official/dir/
$ ln -s /home/official/dir/redmine-3.1.0 /home/official/redmine

데이터베이스 설정을 해주자. 메일 설정은 나도 헷갈리니 나중에 기회가 되면 추가

$ cd /home/official/redmine
$ cp config/database.yml.example config/database.yml
$ vi config/database.yml

아래 production: 부분을 DB 환경에 맞게 수정

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: db_username
  password: ""
  encoding: utf8


레드마인 구동 환경 설치

레드마인 구동에 필요한 gem들은 bundler를 통해 관리된다. bundle 명령어를 통해 필요 gem 들을 한방에 설치 가능

$ sudo gem install bundler --no-document
$ sudo bundle install --without development test

mysql2 gem 설치시 에러날 경우

$ sudo apt-get install libmysqlclient-dev

rmagick gem 설치시 에러날 경우

$ sudo apt-get install imagemagick libmagickcore-dev libmagickwand-dev


레드마인 토큰 / DB 설정 마이그레이션

$ bundle exec rake generate_secret_token
$ RAILS_ENV=production bundle exec rake db:migrate
$ RAILS_ENV=production REDMINE_LANG=ko bundle exec rake redmine:load_default_data


레드마인 접근 디렉토리 권한 설정

$ cd /home/official/redmine
$ mkdir -p tmp tmp/pdf public/plugin_assets
$ sudo chown -R 사용자계정명:사용자계정명 files log tmp public/plugin_assets
$ sudo chmod -R 755 files log tmp public/plugin_assets


Apache2 - Ruby on Rails 연동 모듈 Passenger 설치

$ sudo apt-get install libcurl4-openssl-dev apache2-dev
$ sudo gem install passenger --no-document
$ sudo passenger-install-apache2-module --language ruby

passenger-install-apache2-module을 실행할때 옵션으로 --language ruby를 줬다면 언어 선택에서 그냥 엔터치면 된다. (일부 터미널 환경에서 언어 선택이 깨질 경우 ! 입력)

모듈 컴파일 크기가 생각보다 큰지 메모리와 swap 크기가 작으면 컴파일 도중에 뻗는 경우가 있다. (CoreMain.cpp 부분) strace로 파보니 mmap이 루프에 빠지더라. 참고로 나는 메모리 1Gib, 스왑 1Gib 일 때 뻗었다.

passenger 모듈 설치 마지막 즈음에 특정 구문을 /etc/apache2/apache2.conf 에 삽입하라는 다음과 같은 안내 메세지가 뜬다. 밑에 있는거 말고 화면에 나온 구문을 apache2.conf 끝에 삽입하자.

Please edit your Apache configuration file, and add these lines:

   LoadModule passenger_module /usr/local/lib/ruby/gems/2.2.0/gems/passenger-5.0.18/buildout/apache2/mod_passenger.so    <IfModule mod_passenger.c>      PassengerRoot /usr/local/lib/ruby/gems/2.2.0/gems/passenger-5.0.18      PassengerDefaultRuby /usr/local/bin/ruby    </IfModule>
After you restart Apache, you are ready to deploy any number of web applications on Apache, with a minimum amount of configuration!

LoadModule와 IfModule 구문을 apache2.conf에 입력하고 apache2 재시작

$ sudo apache2 restart


레드마인 접속을 위한 VirtualHost 설정

이전 포스트에서 다뤘던 001-cukwiki.conf 파일을 복사해서 내용만 수정하도록 한다.

$ sudo cp /etc/apache2/sites-available/001-mediawiki.conf /etc/apache2/sites-available/003-redmine.conf
$ sudo ln -s /etc/apache2/sites-available/003-redmine.conf /etc/apache2/sites-enabled/003-redmine.conf
$ sudo vi /etc/apache2/sites-available/003-redmine.conf
<VirtualHost *:80>
        ServerAdmin uyu423@yourdomain.co.kr
        DocumentRoot "/home/official/redmine/public"
        ServerName redmine.yourdomain.co.kr

        ErrorLog ${APACHE_LOG_DIR}/error.log         CustomLog ${APACHE_LOG_DIR}/access.log combined
        PassengerSpawnMethod smart         PassengerPoolIdleTime 300         PassengerMaxPreloaderIdleTime 0         PassengerMaxRequests 5000         PassengerStatThrottleRate 5         PassengerMinInstances 3         RailsEnv production
        <Directory /home/official/redmine/public>                 Options FollowSymLinks MultiViews                 AllowOverride All         </Directory> </VirtualHost>

대충 conf 파일을 이런 느낌으로. apache2 서비스를 재시작 한 뒤 redmine 접속

$ sudo apache2 restart


잘 뜬다. 기존에 사용하던 플러그인, 스킨 마이그레이션은 알아서...화이팅. 참고로 그냥 새로 설치하는게 편하다.


프로필사진

Yowu (Yu Yongwoo)

그냥 지나가는 흔한 백엔드개발자423 느낌 입니다
우분투 데스크탑 개발 환경을 선호합니다
최근에는 vscode에 vim 모드 올려서 쓰고 있습니다
개발용 키보드는 역시 해피해킹 프로2 무각입니다
락 밴드에서 드럼을 꽤나 오래 쳤었습니다