티스토리 뷰


레드마인(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)

My MBTI type is ENTP. (Of course I do not believe it 100%, but I want to do that) I use Node.js to develop the backend. I use Ubuntu Linux as my development environment, and I love Vim. I am interested in open source and are keen to contribute. I have a bachelor's degree in computer science from Catholic University and now a software engineer at Plating Inc., I spent about 5 years developing and learning, and I am still interested in software development and culture. Recently, I am interested in React, Serverless structure, Domain Design Driven. Sometimes I play drums in the band.