如何在 CentOS 上安装 Redmine(详细)¶
- 目录
- 如何在 CentOS 上安装 Redmine(详细)
- 简介
- 假设
- 安装说明
- 安装 gem 和 passenger 依赖
- 获取 Ruby
- 获取 Gems 1.4.2(与 Gems 1.5 不兼容)
- 安装 Passenger(需要 gcc)
- 重启 Apache
- 下载 Redmine
- 将文件夹复制到其 HTTP 文档根文件夹
- 配置 Apache 以托管文档
- 安装 Bundler
- 添加 Bundler Boot 和预初始化代码
- 创建 Gemfile 并在其中注册这些 gem
- 创建 Redmine MySQL 数据库
- 配置 /var/www/redmine/config/database.yml(重命名 database.yml.example)
- 设置生产环境(可选)
- 生成会话存储
- 迁移数据库模型
- 加载默认数据(可选)
- 重命名 /var/www/redmine/public/ 中的 dispatch CGI 文件
- 编辑 .htaccess 文件进行 CGI 分派配置
- 为 Apache 用户设置读写访问权限
- 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现在应该已完全安装并可用¶
享受吧!