Redmine是一个开源的、基于Web的项目管理和缺陷跟踪工具。它用日历和甘特图辅助项目及进度可视化显示。同时它又支持多项目管理。Redmine是一个自由开放源码软件解决方案,它提供集成的项目管理功能,问题跟踪,并为多个版本控制选项的支持。虽说像IBM Rational Team Concert的商业项目调查工具已经很强大了,但想坚持一个自由和开放源码的解决方案,可能会发现Redmine是一个有用的Scrum和敏捷的选择。 由于Redmine的设计受到Rrac的较大影响,所以它们的软件包有很多相似的特征。Redmine建立在Ruby on Rails的框架之上,它可以夸平台和数据库。
CentOS6.6下快速安装Redmine2.6+MySQL5.6+Apache2.4,教程如下:
1. 初始环境
系统版本:CentOS-6.6-x86_64-minimal.iso
安装LAMP(选择不安装Nginx,Apache用于和Redmine整合),参考《lnmp一键安装包》;修改options.conf,wwwroot_dir=/data/wwwroot
2. ruby安装
cd lnmp/src wget http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.5.tar.gz tar xzf ruby-2.1.5.tar.gz cd ruby-2.1.5 ./configure --prefix=/usr/local/ruby make && make install cd ..
添加到环境变量
vi /etc/profile export PATH=/usr/local/ruby/bin:$PATH . /etc/profile
查看ruby版本号
# ruby -v ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-linux]
3. 安装rails
#安装gem wget http://production.cf.rubygems.org/rubygems/rubygems-2.4.5.tgz tar xzf rubygems-2.4.5.tgz cd rubygems-2.4.5 ruby setup.rb cd ..
提示:gem是一种文件组织的包,一般的ruby的很多插件都有由这种各种的包提供。
# gem -v 2.4.5 # which gem /usr/local/ruby/bin/gem
由于国内网络原因(你懂的),导致rubygems.org存放 Amazon S3上面的资源文件间歇性连接失败。所以你会与遇到gem install rack或bundle install的时候半天没有响应,具体可以用gem install rails -V来查看执行过程。下面替换成淘宝的GEM镜像站:
# gem sources -l *** CURRENT SOURCES *** https://rubygems.org/ # gem sources --remove https://rubygems.org/ https://rubygems.org/ removed from sources # gem sources -a https://ruby.taobao.org/ https://ruby.taobao.org/ added to sources # gem sources -l *** CURRENT SOURCES *** https://ruby.taobao.org/
Redmine需要考虑Ruby版本兼容性问题,请参考:Installing Redmine
Redmine version | Supported Ruby versions | Rails version used |
current trunk | ruby 1.9.3, 2.0.0, 2.1, jruby-1.7.6 | Rails 4.1 |
trunk < r13482 | ruby 1.8.7, 1.9.2, 1.9.3, 2.0.0, 2.1, jruby-1.7.6 | Rails 3.2 |
2.5, 2.6 | ruby 1.8.7, 1.9.2, 1.9.3, 2.0.0, 2.1, jruby-1.7.6 | Rails 3.2 |
2.4 | ruby 1.8.7, 1.9.2, 1.9.3, 2.0.0, jruby-1.7.6 | Rails 3.2 |
Redmine选择安装2.6版本,因此rails安装3.2版本
gem install rails -v=3.2 # rails -v Rails 3.2.19
4. 安装Redmine2.6
wget http://www.redmine.org/releases/redmine-2.6.0.tar.gz tar xzf redmine-2.6.0.tar.gz -C /data/wwwroot mv /data/wwwroot/redmine{-2.6.0,}
创建redmine数据库
cd /data/wwwroot/redmine gem install mysql2 #用mysql2能提供性能 # mysql -uroot -p mysql> create database redmine;
make sure to install the C bindings for Ruby that dramatically improve performance. You can get them by running gem install mysql2.
配置Redmine的database.yml
cd /data/wwwroot/redmine/config cp database.yml.example database.yml cat database.yum #修改对应数据库连接信息 production: adapter: mysql2 database: redmine host: localhost username: root password: "linuxeye" encoding: utf8
安装redmine依赖的所有ruby包
cd .. gem install bundler #注意是在网站根目录下执行 bundle install --without development test rmagick #完成redmine依赖包的安装
bundler是用来管理ruby的包依赖的工具
为Rails生成cookies秘钥
rake generate_secret_token
创建数据库结构
RAILS_ENV=production rake db:migrate
生成缺省数据
RAILS_ENV=production REDMINE_LANG=zh rake redmine:load_default_data
调整文件系统权限
cd /data/wwwroot/redmine mkdir -p tmp tmp/pdf public/plugin_assets chown -R www.www /data/wwwroot/redmine
tmp和tmp/pdf (若不存在则创建该路径,用于生成 PDF 文件);public/plugin_assets (若不存在则创建该路径,plugins资源)
5. 在WEBrick服务上测试Redmine是否安装成功
# vi /etc/passwd #使www用户有bash权限,lnmp脚本安装www用户没有bash权限 www:x:501:501::/home/www:/bin/bash # su www -c "ruby script/rails server webrick -e production -d"
地址:http://IP:3000 (注意:打开iptables 3000端口号)
缺省管理员用户:
- login: admin
- password: admin
如果验证成功,则继续下面的步骤来使Redmine运行在Apache服务上
6. 配置Redmine在Apache上运行
结束webrick服务
cd /data/wwwroot/redmine/public/ cp dispatch.fcgi.example dispatch.fcgi cp htaccess.fcgi.example .htaccess chown -R www.www ./*
安装Passenger(用于整合Apache)
gem install passenger passenger-install-apache2-module
为Apache安装fastcgi模块
cd ~/lnmp/src wget http://www.fastcgi.com/dist/mod_fastcgi-2.4.6.tar.gz tar zxf mod_fastcgi-2.4.6.tar.gz cd mod_fastcgi-2.4.6 wget //linuxeye.com/wp-content/uploads/2014/12/byte-compile-against-apache24.diff patch -p1 < byte-compile-against-apache24.diff #apache2.4下安装mod_fastcgi 2.4.6,需要打补丁 cp Makefile.AP2 Makefile vim Makefile #将Makefile中的路径改成你的apache的安装路径 make && make install #安装成功后,会自动把mod_fastcgi.so复制到/usr/local/apache/modules目录
配置Apache
vi /usr/local/apache/conf/httpd.conf #在结尾添加
LoadModule passenger_module /usr/local/ruby/lib/ruby/gems/2.1.0/gems/passenger-4.0.55/buildout/apache2/mod_passenger.so LoadModule fastcgi_module modules/mod_fastcgi.so <IfModule mod_passenger.c> PassengerRoot /usr/local/ruby/lib/ruby/gems/2.1.0/gems/passenger-4.0.55 PassengerDefaultRuby /usr/local/ruby/bin/ruby </IfModule> <VirtualHost *:80> ServerName 192.168.3.10 DocumentRoot /data/wwwroot/redmine/public ErrorLog "/data/wwwlogs/error_redmine.log" CustomLog "/data/wwwlogs/access_redmine.log" common <Directory /data/wwwroot/redmine/public> Options FollowSymlinks AllowOverride none Require all granted </Directory> </VirtualHost>
并注销掉#Include conf/vhost/*.conf
service httpd restart