redmine是一款开源的流程管理软件,它集流程管理,邮件提醒笨笨关与于一体.
安装环境CentOS 5
安装最新稳定版本Redmine:
1, 安装yaml
安装Ruby前需要安装Libymal,这个是我第一次安装完Ruby后,使用gem –v 查看版本后提示:
/home/webtronics/ruby/bin/gem -v
/home/webtronics/ruby/lib/ruby/1.9.1/yaml.rb:56:in `<top (required)>’:
It seems your ruby installation is missing psych (for YAML output).
To eliminate this warning, please install libyaml and reinstall your ruby.
后面发现不安装这个包,也不会影响Ruby的使用。
下载:wget http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz
tar xf yaml-0.1.4.tar.gz
cd yaml-0.1.4
./configure ;make ;make install
2, 安装Ruby
安装Redmine2.0版本,支持1.9.3版本及其它版本,我下载1.9.3版本
版本要求:http://www.redmine.org/projects/redmine/wiki/RedmineInstall
下载:
wget –no-check-certificate https://rubyforge.org/frs/download.php/76065/ruby-1.9.3-p194.tar.gz
安装:
tar xf ruby-1.9.3-p194.tar.gz
cd ruby-1.9.3-p194
./configure
make
make install
注1: 在这里是直接安装到了系统默认路径,这样安装,ruby会认到第一步中安装的yaml
如果安装ruby的时候自定义路径./configure –prefix=/usr/local/ruby, 使用rake gem 命令时,还是会提示第一步中的警告,但是不会影响正常使用。
注2:如果ruby安装到自定义路径,下面的ruby,rake,gem 命令都要加上Ruby安装的绝对路径,如/usr/local/ruby/bin/ruby /usr/local/ruby/bin/rake /usr/local/ruby/bin/gem
3, 安装Redmine
做完上面两步的准备就可以按照官网的提供的方法安装Redmine。在安装前,我在网上看了许多Redmine的安装教程,发现与官网提供的有些不一样,而且网上的教程都是老版本的安装方法,按照老版本的安装方法安装新版本有会问题。所以老老实实的根据官网的方法来做:http://www.redmine.org/projects/redmine/wiki/RedmineInstall
下载:wget http://rubyforge.org/frs/download.php/76134/redmine-2.0.0.tar.gz
解压:
Tar xf redmine-2.0.0.tar.gz
Cd redmine-2.0.0
注:可以将Redmine移到到你想要放置的目录。
接下来就是按照官网的方法来安装,有些小地方需要注意。
注: 以下操作都在Redmine目录进行
3.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
3.2开始安装gem 依赖包
bundle install –without development test rmagick
注:这一步会安装Mysql的Adapter, 如果Mysql的安装路径不是系统默认的,这一步安装时会提示安装错误,需要增加安装参数安装
单独安装 Mysql2的依赖包 :
gem install mysql2 -v ‘0.3.11’ — –with-mysql-config=/usr/local/mysql/bin/mysql_config
然后再运行上面的命令
3.3创建数据库:
create database redmine character set utf8;
grant all privileges on redmine.* to ‘redmine’@’localhost’ identified by ‘cardinfolink’;
配置Redmine数据连接
Copy config/database.yml.example config/database.yml
Vim config/database.yml
production:
adapter: mysql2 //如果用的Ruby是1.9版本,一定要写mysql2
database: redmine
host: localhost
username: redmine
password: my_password
注:官方原文提示MySQL database using ruby1.9 (adapter must be set to mysql2) 请注意,我开始没注意,后面rake时,老是提示数据库adapter没有安装。
创建sessin存储脚本
rake generate_secret_token
会产生config/initializers/secret_token.rb
创建数据库结构:[root@redmine redmine-2.0.0]# RAILS_ENV=production rake db:migrate
rake aborted!
Please install the mysq2 adapter: `gem install activerecord-mysq2-adapter` (cannot load such file — active_record/connection_adapters/mysq2_adapter)
解决办法:
gem uninstall mysql2
gem install mysql2 -v”0.3.11″
[root@redmine redmine-2.0.0]# RAILS_ENV=production rake db:migrate
rake aborted!
Please install the mysq2 adapter: `gem install activerecord-mysq2-adapter` (cannot load such file — active_record/connection_adapters/mysq2_adapter)
此处吃了暗亏,请具体查看database.yml确认adapter为mysql2而不是mysl2
创建数据库结构:
RAILS_ENV=production rake db:migrate
插入默认的配置数据:
[root@redmine redmine]# RAILS_ENV=production rake redmine:load_default_data
Select language: ar, bg, bs, ca, cs, da, de, el, en, en-GB, es, et, eu, fa, fi, fr, gl, he, hr, hu, id, it, ja, ko, lt, lv, mk, mn, nl, no, pl, pt, pt-BR, ro, ru, sk, sl, sq, sr, sr-YU, sv, th, tr, uk, vi, zh, zh-TW [en] zh
====================================
Default configuration data loaded.
创建相关目录
[root@redmine redmine]# mkdir tmp public/plugin_assets
mkdir: 无法创建目录 “tmp”: 文件已存在
[root@redmine redmine]# chmod -R 755 files log tmp public/plugin_assets
[root@redmine redmine]#
测试3000环境
[root@redmine redmine]#ruby /opt/redmine/script/rails server webrick -e production
通过Aapche访问redmine
后台运行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>
备份和恢复
备份和恢复 是企业应用中永远存在的话题.
Redmine的用户和问题等信息存储于Mysql数据库,表名为redmine而附件等资源存储于Redmine安装目录的files目录下.
因此需要迁移的话只需要备份Mysql数据库的对应的表和files目录即可。
1.备份mysql数据库。
查看redmine/mysql/config/database.yml
记住production字段的username和password。
然后控制台root权限执行:mysqldump -u username -p redmine > /path/redmine_bak.sql
然后是备份附件。
$ cd redmine
$ tar cvzf /var/files_bak.tar.gz ./files/
2、Redmine恢复
附件库恢复
直接将备份的/var/files_bak.tar.gz解压缩到/redmine/files目录下即可
Mysql恢复
在root用户下运行:
$ mysql -u root -p redmine < /var/redmine_bak.sql
3、恢复完毕后启动Redmine,
$ cd redmine
$ ruby script/server -e production
如果页面有乱码,可编辑redmine/mysql/config/database.yml,将production字段的encoding注释掉即可。