项目

常规

个人资料

操作

如何在 CentOS 上安装 Redmine(详细)

简介

我花了很多时间寻找一个好的问题跟踪/项目管理解决方案。经过广泛考虑开源和商业解决方案(如 Jira+Confluence 和 Zoho Projects,价格约为每月 200 美元),我决定选择 Redmine,因为它提供了良好的问题跟踪和项目管理功能,特别是状态工作流、子任务和任务依赖性以及我们需要的所有其他功能。

然而,当我决定部署 Redmine 时,遇到了许多困难,因为在我的工作场所我们使用 PHP,并且不熟悉 Ruby on Rails,对于不熟悉 Ruby on Rails 的人来说设置 Ruby on Rails 相当困难,这主要是由于各种版本依赖性和不兼容性以及缺乏关于如何设置的详细文档。我设法在 Windows XP 上使用 MySQL、Apache 和 Mongrel 设置了 Redmine,但当我尝试在 Windows Server 2008 上安装相同的设置时,遇到了 RoR 和 MySQL 的各种问题,所以我决定在 CentOS 上设置,因为我们实际上使用 CentOS 作为我们的生产 Web 托管。

CentOS 是 Linux 基于生产环境中最常选择的 Linux 操作系统之一。关于设置 CentOS 有大量的文档,它可以被认为是部署和运行生产 Linux 服务器组织的最佳选择,这些组织具有所有级别的内部 Linux 服务器部署和管理能力。

Redmine 是最好的(如果不是最好的)开源问题跟踪和项目管理应用程序之一,但由于它使用 Ruby on Rails 开发,对于不熟悉 Ruby on Rails 环境的人来说,部署它可能相当复杂。

本指南提供了在 CentOS 操作系统上使用以下组件启动 Redmine 所需的详细步骤
  • Apache 网络服务器
  • MySQL 数据库管理系统
  • Ruby on Rails
  • Mod Passenger Apache 模块

本指南提供了详细的安装说明,并解释了每一步的作用,以便经验丰富的新手都能轻松跟随。

假设

  • 已安装并运行CentOS
  • 已安装并运行Apache
  • 已安装并运行MySQL
  • 您已以root用户登录
  • 以下步骤依次成功执行,没有错误

安装说明

安装gem和passenger依赖项

yum -y install zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel

获取Ruby

# Create the directory where you will store the Downloads
mkdir ~/Downloads # This can be any directory.

# Change to directory where you will store the download
cd ~/Downloads # This can be any directory.

# FTP to where you will download ruby from.
# When asked to login use user/password of anonymous/anonymous
ftp ftp.ruby-lang.org 
Name (ftp.ruby-lang.org:root): anonymous
Password: anonymous

ftp> cd /pub/ruby
ftp> get ruby-1.8.7-pXXX.tar.gz
ftp> quit

# You have now downloaded ruby and need to untar it
tar zxvf ruby-1.8.7-pXXX.tar.gz

# Compile ruby
cd ruby-1.8.7-pXXX
./configure
make
make install

# Verify ruby installation
ruby -v
which ruby

# Change back into your downloads directory
cd ..

获取Gems 1.4.2(与Gems 1.5不兼容)

wget http://production.cf.rubygems.org/rubygems/rubygems-1.4.2.tgz
tar zxvf rubygems-1.4.2.tgz
cd rubygems-1.4.2
ruby setup.rb
gem -v
which gem
cd ..

安装Passenger(需要gcc)

gem install passenger
passenger-install-apache2-module

另一种方法是安装来自以下位置的Apache mod_passenger RPM
http://passenger.stealthymonkeys.com/

RHEL/CentOS 5

rpm -Uvh http://passenger.stealthymonkeys.com/rhel/5/passenger-release.noarch.rpm
yum install mod_passenger

RHEL/CentOS 6

rpm --import http://passenger.stealthymonkeys.com/RPM-GPG-KEY-stealthymonkeys.asc
yum install http://passenger.stealthymonkeys.com/rhel/6/passenger-release.noarch.rpm
yum install mod_passenger

重启Apache

service httpd restart

下载Redmine

下载页面:http://rubyforge.org/frs/?group_id=1850

wget http://rubyforge.org/frs/download.php/75597/redmine-1.3.0.tar.gz  # GET LATEST VERSION ON RUBYFORGE
tar zxvf redmine-1.3.0.tar.gz

将文件夹复制到其HTTP文档根文件夹

cp -av redmine-1.3.0/* /var/www/redmine

配置Apache托管文档

更多信息请参阅: 如何配置Apache以运行Redmine

安装Bundler

gem install bundler

添加Bundler Boot和预初始化代码

更多信息请访问Bundler网站

创建Gemfile并将这些gem注册到其中

vi /var/www/redmine/Gemfile
# file: /var/www/redmine/Gemfile
source "https://rubygems.org.cn" 
gem "rake", "0.8.3" 
gem "rack", "1.1.0" 
gem "i18n", "0.4.2" 
gem "rubytree", "0.5.2", :require => "tree" 
gem "RedCloth", "~>4.2.3", :require => "redcloth" # for CodeRay
gem "mysql" 
gem "coderay", "~>0.9.7" 
bundle install

创建Redmine MySQL数据库

yum install mysql-server
chkconfig mysqld on
service mysqld start
/usr/bin/mysql_secure_installation

对于MySQL
启动mysql客户端(mysql -u root -p)并输入以下命令

create database redmine character set utf8;
create user 'redmine'@'localhost' identified by 'my_password';
grant all privileges on redmine.* to 'redmine'@'localhost'; 

对于5.0.2之前的MySQL版本 - 跳过“创建用户”步骤,而是

 grant all privileges on redmine.* to 'redmine'@'localhost' identified by 'my_password';

配置/var/www/redmine/config/database.yml(重命名database.yml.example)

设置生产环境(可选)

在文件redmine/config/environment.rb中取消以下行的注释

ENV['RAILS_ENV'] ||= 'production'

生成会话存储

RAILS_ENV=production bundle exec rake generate_session_store

迁移数据库模型

RAILS_ENV=production bundle exec rake db:migrate

加载默认数据(可选)

RAILS_ENV=production bundle exec rake redmine:load_default_data

按照说明操作。

重命名/var/www/redmine/public中的dispatch CGI文件

mv dispatch.cgi.example dispatch.cgi
mv dispatch.fcgi.example dispatch.fcgi
mv dispatch.rb.example dispatch.rb

编辑.htaccess文件进行CGI调度配置

mv htaccess.fcgi.example .htaccess

为Apache用户设置文件的所有权和权限以进行读写访问

cd ..
chown -R apache:apache redmine-1.x
chmod -R 755 redmine-1.x

Redmine现在应该已完全安装并可用

享受吧!

Nick Shel更新于超过12年前 · 3次修订