自己在centos5.5上安装redmine2.2.3时遇到一些问题,在网上查找资料终于把遇到的问题都解决了。以下内容大部分来自网络。
参考文章包括:
《centos5安装redmine2.0》http://linuxiou.blog.51cto.com/1262466/867790
《centos安装redmine项目管理系统》http://blog.haohtml.com/archives/13282
redmine官方安装说明 http://www.redmine.org/projects/redmine/wiki/RedmineInstall
《redmine安装》http://www.cnblogs.com/scige/archive/2012/08/31/2665370.html
这里我已经安装好了apach和mysql环境了。
1. 安装依赖包
yum
-y install zlib-devel curl-devel openssl-devel apr-devel apr-util-devel |
在做Ruby on rail开发环境的时候,发现ruby有了yaml库需求,如果不进行前置安装yaml库,那么在进行接下来的rubygems和rails的时候就会出现如下错误:
“It seems your ruby installation is missing psych (for YAML output). To eliminate this warning, please install libyaml and reinstall your ruby.”
注意:请勿使用yum去更新libyaml-devel和libyaml
解决方法:安装libyaml库
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
这里安装ruby1.9.3-p194。因为centos中自带的ruby的版本redmine2.2.3不支持,所以自己下了个ruby1.9.3。自己试着安装过最新的ruby1.9.3-p392,但总是提示libyaml库没有安装(明明已经安装了呀!),所以就重新下载了个p194,果然成功了。
wget
http: //ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p194.tar.gz tar
zxvf ruby-1.9.3-p194.tar.gz cd
ruby-1.9.3-p194 ./configure
--prefix=/usr/local --enable-shared --disable-install-doc --with-opt-dir=/usr/local/lib make make
install cd
../ |
检查ruby版本号
ruby
-v |
3. 安装rebyGems
wget
http: //production.cf.rubygems.org/rubygems/rubygems-1.8.24.tgz tar
zxvf rubygems-1.8.24.tgz cd
rubygems-1.8.24 ruby
setup.rb gem
-v |
4. 安装redmine2.2.3
下载redmine2.2.3的安装包,解压:
unzip
redmine-2.2.3.zip cd
redmine-2.2.3.zip |
以下操作均在rdmine的目录中进行。
4.1 安装bundler
gem
install bundler |
注:如果Ruby安装是自定义路径,path/ruby/bin/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 |
4.2开始安装gem 依赖包
bundle
install --without development test rmagick |
由于安装依赖包时需要用到mysql2,centos5.5上自带的是mysql,所以以上操作会报错:
Gem
files will remain installed in /home/admin/.bundler/tmp/6155/gems/mysql2-0.3.11
for inspection. Results
logged to /home/admin/.bundler/tmp/6155/gems/mysql2-0.3.11/ext/mysql2/gem_make. out An
error occured while installing
mysql2 (0.3.11), and Bundler cannot continue . Make
sure that `gem install mysql2 -v '0.3.11' `
succeeds before bundling. |
解决方法:安装mysql-devel后再安装gem依赖包。
yum
install mysql-devel |
5. 初始化数据库
1)在phpmyadmin里创建redmine数据库和数据库账户和密码。
create
database redmine character set utf8; grant
all privileges on redmine.* to 'redmine' @ 'localhost' identified
by 'my_password' ; |
注意如果密码为数字类型的话,需要用引号括住才可以的。不然会提示如下错误:
rake
aborted! can't
convert Fixnum into String |
2)修改数据库配置文件,这里使用的是mysql数据库,由于ruby的版本为1.9。所有adapter要为mysql2, 如果版本为1.8的话,由直接写mysql即可。
cp
config/database.yml.example config/database.yml vi
config/database.yml production: adapter:
mysql2 database:
redmine host:
localhost username:
redmine password:
my_password |
6. 生成会员存储密码
rake
generate_secret_token |
7. 初始化数据库
RAILS_ENV=production
rake db:migrate RAILS_ENV=production
rake redmine:load_default_data |
8. 目录权限
addgroup
redmine adduser
redmine -g redmine chown
-R redmine:redmine files log tmp public chmod
-R 755 files log tmp public |
9. 测试WEBrick web server
ruby
script/rails server webrick -e production |
到这里已经全部安装完成。在浏览器里打开ip:3000即可看到redmine的界面。如果看不到界面,请检查防火墙问题。只需要将3000端口开放就可以了。或者直接将防火墙关闭也可以。
如果在局域网用ip地址访问的话,会发现特别的慢,这是由于Redmine自带的WebrickWeb发布的问题,需要使用Mongrel组件来替换Webrick。另外,在新建或更新【问题】时也会很慢,这是由于不正确的邮件配置造成的。
1.
gem install mongrel --pre //
若使用gem install mongrel安装,则会提示ERROR: Failed to build gem native extension,原因是mongrel 1.1.5与ruby 1.9.x不兼容 2.
修改redmine下的Gemfile文件,在Gemfile文件中加入: gem 'mongrel' ,
'~>
1.2.0.pre2' 3.
删除gemfile. lock 文件,重新执行
bundle install 4.
若无需发送邮件,可在【管理】-【配置】-【邮件通知】中,取消需要发送邮件通知的动作;也可修改configuration.yml中的配置,将delivery_method由同步发送邮件改为异步发送邮件:设置delivery_method的值为:async_smtp(异步发送邮件),重启redmine服务即可。若需发送邮件,则需配置好正确的SMTP服务器和邮箱等。 |
但这样只是以独立的方式启动redmine的服务器,在后台执行,有些不足,因为客户端的访问日志会在终端上直接显示。并且你退出终端时,服务器进程也会跟着关闭,如果希望Redmine作为服务运行,加上-d参数即可:
ruby
script/rails server mongrel -e production -d |
vi redmine_start.sh //把脚本加入到 rc.local
">#!/bin/bash
/data/wwwroot/redmine/script/rails server webrick -e production -d
初始化用户名和密码全为admin.默认语言为english,在settings->display->Default language 里修改成“简体中文”就可以了。不现用户可以选择使用不同的显示语言,如果要修改自己的显示语言的话,只需要在个人账户里修改就可以了。
Redmine里邮件配置:
vi
config/configuration.yml<br> default : #
Outgoing emails configuration (see examples above) email_delivery: delivery_method:
:smtp smtp_settings: address:
smtp.qq.com port:
25 domain:
qq.com authentication:
:login user_name:
"[email protected]" password:
"blog.haohtml.com" |
保存即可。记得如果服务已经启用过的话,先 kill -9 进程号 杀掉,再启用服务。