centos5.5安裝redmine2.2.3

自己在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 進程號 殺掉,再啓用服務。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章