본문 바로가기
Linux/CentOS

[CentOS Stream8] 09. Redmine 설치

by 이도현 2021. 4. 23.

레드마인은 개발후 이슈트래킹하는데 큰 도움이 된다.

체계가 없는 프로젝트에 들어가면 결함사항이나 수정요청사항을 메일이나 카카오톡 같은 메신저 프로그램으로 단발성으로 보내는 경우가 많은데, 이런 방식을 사용하면 누락되는 사항도 많고 해결되었는지 여부도 확인하기 힘들다.

이러한 문제점을 해결해줄 프로그램으로 Jira, Redmine 같은 프로그램이 있다.

사실 요즘 Jenkins에서도 이러한 기능을 제공하는 것 같긴 하나, 일단은 설치를 해보려 한다.

 

AWS에서 Bitnami로 설치하는 방법이 더 깔끔하지만, 이번달에 AWS에 인스턴스를 6개 정도 올려서 이것저것 설치해놓고 몇 일 까먹고 있다 확인해보니 아무것도 안했는데 30불 넘게 청구가 되었다. 비용을 매일 확인하지 않은 나를 자책하며 모든 인스턴스를 내린다음 이렇게 다시 CentOS에 설치하려 한다. 집에서 서버용 컴퓨터를 켜놓고 하루종일 돌리면서 전기요금과 인터넷 요금을 내고 있는데, 굳이 AWS를 사용하고 싶지는 않았다. 

 

지금 CentOS에 이미 많은 툴들을 설치하여 포트가 중복되는 경우가 많다.

다음 명령어를 통해 사용중인 포트를 보기 좋게 확인할 수 있다.

lsof -i -nP | grep LISTEN | awk '{print $(NF-1)" "$1}' | sort -u
netstat -tnlp | grep -v 127.0.0.1 | sed 's/:::/0 /g' | sed 's/[:\/]/ /g' | awk '{print $5"\t"$10}' | sort -ug

이번에 Redmine은 3009번 포트를 사용하려 한다. 

 

레드마인을 설치하려면 MySQL, PostgreSQL, Microsoft SQL Server, SQLite 중 하나가 설치가 되어 있어야 한다.

지금까지의 과정을 그대로 따라왔다면 MariaDB는 이미 설치되어 있으니, 그대로 진행할 수 있다. 

 

먼저 다음 구문에 아이디를 넣어 마리아디비를 실행하고 패스워드를 입력한다.

mariadb -u <사용자 아이디> -p

로그인 되었으면 redmine이라는 데이터베이스를 생성하고, remine이라는 아이디로 계정을 생성한다.

change-with-strong-password부분은 비밀번호로, 본인이 사용할 비밀번호로 변경해야 한다.

CREATE DATABASE redmine CHARACTER SET utf8;
GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password';
FLUSH PRIVILEGES;

정상적으로 완료되었으면 종료한다.

EXIT;

필요한 것들 설치- 생각해보니 아파치는 설치 안해도 될 것 같음

sudo dnf install epel-release
sudo dnf config-manager --enable epel
sudo dnf install httpd mod_passenger passenger passenger-devel ruby
sudo systemctl enable httpd --now

새 사용자 추가, 그룹 권한 등 추가

sudo useradd -m -U -r -d /opt/redmine redmine
sudo usermod -a -G redmine apache
sudo chmod 750 /opt/redmine

레드마인 설치를 위해 설치 필요한 것들

sudo dnf group install "Development Tools"
sudo dnf install zlib-devel curl-devel openssl-devel mariadb-devel ruby-devel

레드마인 유저로 변경

sudo su - redmine

레드마인 다운로드 및 압축해제

curl -L http://www.redmine.org/releases/redmine-4.1.0.tar.gz -o redmine.tar.gz
tar -xvf redmine.tar.gz

데이터베이스 연동 설정

cp /opt/redmine/redmine-4.1.0/config/database.yml.example /opt/redmine/redmine-4.1.0/config/database.yml
vi /opt/redmine/redmine-4.1.0/config/database.yml

change-with-strong-password 부분은 아까 마리아DB에서 생성한 redmine 계정 비밀번호를 입력하면 된다.

/opt/redmine/redmine-4.1.0/config/database.yml
production: 
adapter: mysql2 
database: redmine 
host: localhost 
username: redmine 
password: "change-with-strong-password" 
encoding: utf8mb4

루비관련 의존관계 파일들 설정

cd ~/redmine-4.1.0
gem install bundler --no-rdoc --no-ri
bundle install --without development test postgresql sqlite --path vendor/bundle

키 생성하고 데이터베이스에 마이그레이션

bundle exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrate

실행하기

bundle exec rails server webrick -e production -p 3009 &

설치하는 과정에서 여러번의 시행착오가 있어서 설치하는 파일들 중에는 불필요한 것들도 있을 수 있다.

나중에 다시 설치하는 상황이 오면 테스트 하면서 수정하겠다.