费了九牛二虎之力,终于把redmine装上了,以下是安装过程,参考了前人的教程
1.安装yaml库
(1)如果这个库没装的话,装rubygems时总会出现这个错误:
“It seems your ruby installation is missing psych (for YAML output). To eliminate this warning, please install libyaml and reinstall your ruby.”
(2)如果已经安装了rubygems后发现报上面的错误,一定要先在ruby的源码目录执行下面这句,再安装yaml
make clean
(3)安装方法:
wget -c http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz tar xzvf yaml-0.1.4.tar.gz cd yaml-0.1.4 ./configure --prefix=/usr/local #注意此处勿改路径!否则库文件无法写入正确目录 make && make install |
2.安装ruby
(1)版本要求:http://www.redmine.org/projects/redmine/wiki/RedmineInstall
(2)安装方法:
wget -c http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p0.tar.gz tar zvxf ruby-1.9.3-p0.tar.gz cd ruby-1.9.3-p0 ./configure --prefix=/usr/local make && make install |
(3)注意,服务器可能原来已经装了低版本的ruby,比如这台服务器装在了
/usr/bin/ruby 上,版本为 1.8.5 (通过 ruby -v 查看)
新版的ruby装在了 /usr/local/bin/ruby 上
需要修改一下PATH路径,让系统默认使用新版ruby:
vim /etc/profile |
找到类似 export PATH 的语句,在它之前增加:
PATH=/usr/local/bin:$PATH #等于号两边不能有空格 |
保存,退出,执行下面语句使改动生效:
source profile |
(4)执行 ruby -v 查看版本是否变成了最新的
ruby 1.8.5 (2006-08-25) [x86_64-linux]
3.安装rubygems
如果系统自带的gem版本够的话就不用再装了
安装方法:
wget http://production.cf.rubygems.org/rubygems/rubygems-1.8.24.tgz #tar zxvf rubygems-1.8.24 #cd rubygems-1.8.24 #ruby setup.rb #gem -v |
4.安装rails(不确定这步是否必须,反正我装了)
gem install rails |
这个是在线安装,比较慢,可能要等很久,也可以先把所有需要的安装包都下载(扩展名为gem的文件),放到一个目录里,再执行上面命令,可以离线安装
下载网站:http://rubygems.org/
网上查到的需要的安装包,如果提示缺少就装
gem install rake gem install activesupport gem install activerecord gem install actionpack gem install actionmailer gem install actionwebservice gem install rails gem install i18n |
本地安装的话可以加 --local参数,例如:
gem install --local rack-1.1.0.gem |
5.安装ruby-mysql(不确定这步是否必须,反正我装了)
gem install ruby-mysql |
6.安装redmine
主要依照官网的安装教程:http://www.redmine.org/projects/redmine/wiki/RedmineInstall
wget http://rubyforge.org/frs/download.php/76259/redmine-2.0.3.tar.gz tar xf redmine-2.0.3.tar.gz cd redmine-2.0.3 |
注: 以下操作都在redmine目录进行
7.安装Bundler
gem install bundler |
Redmine 1.4 版本后使用Bundler来管理gems依赖关系,在Redmine的目录里有一个Gemfile 需要的依赖包写在里面。 安装时根据实际需要与情况更改安装包。
由于我使用的是Mysql数据库,需要将Gemfile中的配置关于PostgreSQL的安装包注释掉,如果系统没有安装PostgreSQL而不注释掉,安装时会提示错误。
编辑Gemfile文件,将如下内容注释掉,不安装PostgreSQL的相关依赖包。
#platforms :mri, :mingw do # group :postgresql do # gem "pg", ">= 0.11.0" # end # # group :sqlite do # gem "sqlite3" # end #end |
保存退出,执行:
bundle install --without development test rmagick |
8.创建数据库:
create database redmine character set utf8; grant all privileges on redmine.* to 'redmine'@'localhost' identified by 'my_password'; |
9.配置Redmine数据连接
cp config/database.yml.example config/database.yml
|
production: adapter: mysql2 //如果用的Ruby是1.9版本,一定要写mysql2 database: redmine host: localhost username: redmine password: my_password socket: /mysqldb/mysql.sock //如果mysql.sock默认没有装在/var/lib/mysql/mysql.sock 则需要增加这句,手动指定 |
其他几个 development,test啥的我都没有配置
创建sessin存储脚本
rake generate_secret_token |
会产生config/initializers/secret_token.rb
创建数据库结构:
RAILS_ENV=production rake db:migrate //如果数据库配置文件有误这里会报错 |
插入默认的配置数据:
RAILS_ENV=production rake redmine:load_default_data |
创建相关目录:
mkdir tmp public/plugin_assets //如果目录已存在就不用管了 chmod -R 755 files log tmp public/plugin_assets |
运行Redmine
ruby script /rails server webrick -e production |
通过 http://ip:3000 即可访问到,安装结束。
10.通过Aapche访问redmine
在后台执行
nohup ruby script /rails server webrick -e production & |
在Apache配置文件中添加一个虚拟主机
<VirtualHost *:80> ServerName redmine.company.com ProxyPass / http://localhost:3000/ ProxyPassReverse / http://localhost:3000/ </VirtualHost> |
重启Aapche 就可以通过域名访问Redmine