공개하기부끄러운블로그 2021. 1. 22. 17:22
반응형
OS : CentOS7.9
DB : MySQL5.7
Ruby : 2.6.6
Ruby-gems : 3.1.2

 

1. MySQL USER 생성 (MySQL 설치과정은 생략)

mysql> CREATE DATABASE redmine CHARACTER SET utf8 COLLATE utf8_general_ci;

mysql> CREATE USER redmine@localhost identified by 'Password';

mysql> GRANT ALL PRIVILEGES ON redmine.* TO redmine@localhost;

mysql> flush privileges;

 

 

2. Ruby 설치

레드마인은 Ruby로 개발된 프로그램으로써 Ruby를 설치해야함

현재 Redmine4.1 Version에 Ruby2.6버전까지 지원 중

yum 으로 설치시 default로 Ruby2.0이 설치되기에 소스컴파일을 통해 설치를 진행

# sudo yum -y groupinstall "Development Tools"
# # yum -y install libxslt-devel libyaml-devel libxml2-devel gdbm-devel libffi-devel zlib-devel openssl-devel libyaml-devel readline-devel curl-devel openssl-devel pcre-devel git memcached-devel valgrind-devel mysql-devel ImageMagick-devel ImageMagick

Ruby를 /usr/local/src 경로에 다운로드 받아 컴파일

# cd /usr/local/src
# wget https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.5.tar.gz
# tar xvf ruby-2.6.5.tar.gz
# cd ruby-2.6.5
# ./configure 
# make && make install
# ruby -v
ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-linux]

Ruby-gems 도 마찬가지로 설치를 진행합니다.

# wget https://rubygems.org/rubygems/rubygems-3.1.2.tgz
# tar xvf rubygems-3.1.2.tgz
# cd rubygems-3.1.2
# /usr/local/bin/ruby setup.rb

bundler, chef ruby-shadow 설치를 진행

# gem install bundler chef ruby-shadow

Gem을 이용하여 OpenID와 mysql2를 설치

# gem install ruby-openid
Fetching ruby-openid-2.9.2.gem
Successfully installed ruby-openid-2.9.2
Parsing documentation for ruby-openid-2.9.2
Installing ri documentation for ruby-openid-2.9.2
Done installing documentation for ruby-openid after 1 seconds
1 gem installed

# gem install mysql2
Building native extensions. This could take a while...
Successfully installed mysql2-0.5.3
Parsing documentation for mysql2-0.5.3
Installing ri documentation for mysql2-0.5.3
Done installing documentation for mysql2 after 0 seconds
1 gem installed

 

 3. Redmine 설치

 

설치할 경로(필자는 /usr/local/src) 에 Redmine을 다운로드 하고 압축을 해제

# cd /usr/local/src
# wget https://www.redmine.org/releases/redmine-4.1.0.tar.gz
# tar xvfz redmine-4.1.0.tar.gz

 

설정파일 복사 및 DB 연결 설정

# cd redmine-4.1.0
# cp config/configuration.yml.example config/configuration.yml
# cp config/database.yml.example config/database.yml
# vim config/database.yml
production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: "Password"
  encoding: utf8

 

구동에 필요한 패키지 설치

# bundle install --without development test --path vendor/bundle

쿠키 암호화를 위한 시크릿 토큰 생성

# bundle exec rake generate_secret_token

데이터베이스 생성

# RAILS_ENV=production bundle exec rake db:migrate

기본 언어 설정 ko를 입력

# RAILS_ENV=production bundle exec rake redmine:load_default_data

Select language: ar, az, bg, bs, ca, cs, da, de, el, en, en-GB, es, es-PA, et, eu, fa, fi, fr, gl, he, hr, hu, id, it, ja, ko, lt, lv, mk, mn, nl, no, pl, pt, pt-BR, ro, ru, sk, sl, sq, sr, sr-YU, sv, th, tr, uk, vi, zh, zh-TW [en] ko
====================================
Default configuration data loaded.

 

백그라운드로 실행 (http://localhost:3000 을 통해 접속 확인 Apache 연동 필요없으신분들은 여기까지 끝)

# bundle exec rails server webrick -e production -b 0.0.0.0 &

 

 

  4. Apache와 연동을 하고싶다면 아래 내용 진행

 

gem을 통해 passenger를 설치

# gem install passenger
Fetching: passenger-5.1.12.gem (100%)
Building native extensions.  This could take a while...
Successfully installed passenger-5.1.12
Parsing documentation for passenger-5.1.12
Installing ri documentation for passenger-5.1.12
Done installing documentation for passenger after 46 seconds
1 gem installed

passenger를 통해 아파치 모듈을 설치

# passenger-install-apache2-module

필자의 경우 Apache를 컴파일로 설치(/usr/local/apache)하여 해당 디렉토리 httpd.conf에 등록함

yum으로 설치한 경우 /etc/httpd/conf.d/redmine.conf 파일에 passenger모듈 추가 후 VirtualHost를 추가

LoadModule passenger_module /usr/local/lib/ruby/gems/2.6.0/gems/passenger-6.0.4/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
  PassengerRoot /usr/local/lib/ruby/gems/2.6.0/gems/passenger-6.0.4
  PassengerDefaultRuby /usr/local/bin/ruby
  PassengerDefaultUser apache
</IfModule>

<VirtualHost *:80>
    DocumentRoot "/usr/local/src/redmine-4.1.0/public"
    ServerName localhost
    #CustomLog "|/usr/local/apache/bin/rotatelogs /usr/local/apache/logs/horror.com-access-%Y-%m-%d.log 86400 +540" common
    #ErrorLog "|/usr/local/apache/bin/rotatelogs /usr/local/apache/logs/horror.com-error-%Y-%m-%d.log 86400 +540"
        <Directory "/usr/local/src/redmine-4.1.0/public"> 
            Options FollowSymLinks 
            AllowOverride None 
            Require all granted 
        </Directory> 
</VirtualHost>

http://해당도메인 확인

 

반응형