一、实验环境 centos6.4 64

所需安装包: ruby-2.0.0-p247.tar.gzrubygems-1.8.25.tgzredmine-2.3.2.tar.gz


二、安装步骤

注意:主要需要安装rubyrailsredmine,他们之间有麻烦的版本依赖关系,具体见

http://www.redmine.org/projects/redmine/wiki/RedmineInstall


1、安装必要的软件包

yum install -y gcc\

gcc-c++ \

make \

apr-devel \

apr-util-devel \

zlib-devel \

curl-devel \

expat-devel \

gettext-devel \

openssl-devel \

httpd \

httpd-devel \

mysql \

mysql-server \

mysql-devel \

libxml2-devel \

libxslt-devel \

ImageMagick-devel


2、安装ruby

下载ruby包:

wget http://cache.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p247.tar.gz

解压并编译:

tar -zxvf ruby-2.0.0-p247.tar.gz

cd ruby-2.0.0-p247

./configure --prefix=/usr/local/ruby

make

make install


添加环境变量:

vi /etc/profile在未尾添加下面一行:

exportPATH=/usr/local/ruby/bin:$PATH

使环境变量生效

source /etc/profile

检查一下安装是否成功,ruby版本号

ruby –v

095506360.png


安装依赖包(注:如果用yum安装过zlibopenssl的组件就可以不用编译的

ruby解压的目录下编译安装

zlib

cd /root/ruby-2.0.0-p247/ext/zlib/

ruby extconf.rb

make

make install


openssl

cd /root/ruby-2.0.0-p247/ext/openssl

ruby extconf.rb

make

make install


3、安装rubygems

在安装rails之前,要先安装rubygemsrubygemsruby的在线管理工具:

wget http://files.rubyforge.vm.bytemark.co.uk/rubygems/rubygems-1.8.25.tgz


tar -xzvf rubygems-1.8.25.tgz

cd rubygems-1.8.25

ruby setup.rb #耐心等待.......


gem -v 检查安装是否成功

103226989.png


4redmine安装

wget http://files.rubyforge.vm.bytemark.co.uk/redmine/redmine-2.3.2.tar.gz


tar -xzvf redmine-2.3.2.tar.gz

mv redmine-2.3.2/usr/local/redmine

cd /usr/local/redmine/config

cp database.yml.example database.yml

103308615.png


修改database.yml里面production的配置:

vi database.yml

production:

adapter:mysql2

database:redmine_default //这就是我们后面在mysql里创建的redmine_default数据库

host:localhost

username:redmine  //这是我们为redmine数据库创建的用户

password:"redmine"  //这是用户访问redmine数据库需要的密码

encoding: utf8


注:gem安装需要网络,且需要时间,安装的时候,耐心等待

—————————————————————————————

5、安装bundler

gem installbindler

6、 安装rdoc

gem install rdoc rdoc-data

7、 安装rails

由于国内网络原因(你懂的),导致rubygems.org存放在 Amazon S3 上面的资源文件间歇性连接失败。所以你会与遇到 gem install rack bundle install 的时候半天没有响应,具体可以用 gem install rails -V 来查看执行过程。

RubyGems 镜像 - 淘宝网,这是一个完整 rubygems.org 镜像,你可以用此代替官方版本,同步频率目前为15分钟一次以保证尽量与官方服务同步。

gem sources –l //看看是什么镜像的,默认的是rubygems.org

gem sources--remove http://rubygems.org///删除原有的镜像

gem sources -a http://ruby.taobao.org///将源镜像换成淘宝的

—————————————————————————————

[root@localhostredmine]# gem sources –l //再确定只有ruby.taobao.org

*** CURRENT SOURCES ***


http://ruby.taobao.org/


gem install rails //安装rails

—————————————————————————————

gem list 是你gem包里安装的插件列表



# 下面的Gemfile是在redmine这个目录下的,将Gemfilerubygems换成淘宝的镜像源

[root@localhost redmine]# sed -i '1s/https/http/g'Gemfile //这两行将源改为淘宝的源

[root@localhost redmine]# sed -i'1s/rubygems/ruby.taobao/g' Gemfile


# 开始安装gem 依赖包

[root@localhostredmine]# bundle install //运行buldle install检查依赖


8、启动数据库,进入数据库

service mysqld start

mysql


创建数据库、用户

mysql> create database redmine_default character set utf8;

mysql> createuser 'redmine'@'localhost' identified by 'redmine';

mysql> grant all privileges on redmine_default.* to 'redmine'@'localhost';

mysql> flush privileges;


关联数据库,注意需要在redmine目录下运行(执行下面三条语句,初始化数据库,建立表结构,并且写入相应数据)

rakegenerate_secret_token

RAILS_ENV=productionrake db:migrate //创建数据库

RAILS_ENV=productionrake redmine:load_default_data //指明当前项目运行环境为production ,中间会提示选择语言,默认的就是(en)英文的,据说选择语言时选择英文会有更多的功能

选择语言时选择英文会有更多的功能


注:RAILS_ENV=production rake db:migrate这个命令是每次我们导入了数据或对redmine里的数据库有所变动之后要执行的,不然数据在redmine网页就无法访问到数据库里的内容,用这个命令来导入一下我们更改过数据目录,之后重启一下apahce服务就好或redmine的服务。


启动redmineredmine目录下执行)

ruby script/railsserver webrick -e production

现在就可以通过3000的端口访问redmine

如果希望Redmine作为服务运行,加上-d参数即可:ruby script/rails server webrick -e production -d


apache支持redmine

通过 http://ip:3000/ 这样访问 redmine 貌似很慢 , 要把 apache redmine 整合效果就好很多了。不过 Apache 上面沒有 mod_rails ,我们需要安装后才能进行。方法也很简单。由于我们之前安装有 Ruby ,那麼安裝方式就是:

gem i passenger

passenger-install-apache2-module //安装apache的模块

apache模块安装好如下的提示,有模块的路径的,及回车后虚拟主机的说明

102546739.png

102548411.png

如果报passenger-install-apache2-module这条命令找不到的话,那么通过下面的命令查看执行路径:

gem environment


编辑apache的配置文件(vi /etc/httpd/conf/httpd.conf)添加下面的信息

LoadModule passenger_module /usr/local/ruby/lib/ruby/gems/2.0.0/gems/passenger-4.0.23/buildout/apache2/mod_passenger.so

PassengerRoot /usr/local/ruby/lib/ruby/gems/2.0.0/gems/passenger-4.0.23

PassengerDefaultRuby /usr/local/ruby/bin/ruby


1、注释掉原有的ServerNameServerAdminDocumentRoot的信息;

2、启用虚拟主机的支持,去掉NameVirtualHost *:80前面的#

3、在配置文件的末尾加上:

<VirtualHost*:80>

ServerName www.redmine.com

DocumentRoot /usr/local/redmine/public

#ErrorLog logs/redmine_error_log

<Directory“/usr/local/redmine/public”>

Allow from all

AllowOverrideall

Options -MultiViews

</Directory>

</VirtualHost>

9、重启Apache服务器:service httpd restart

在网页中访问http://IP就好了