最终目标锁定为两个开源的项目管理系统,禅道和Redmine,两个都很优秀,而我的需求又非常简单——能提交、追踪、反馈bug就可以了,这两个系统都是可以胜任的。虽然这篇文章讲解的是Redmine的安装和使用心得,但是对于多数用户,可能禅道是更好的选择,因为它兼具bug管理功能的同时,更偏重于项目管理,最重要的是,它的安装非常简单,几乎是一键搞定。 而Redmine的安装部署绝对不是一键简单的工作。

   首先要准备Ruby相关文件,Redmine是基于Ruby on rails开发的。

   1、下载railsinstaller,我这时下载的版本是railsinstaller-2.2.1.exe,对应的官网:http://railsinstaller.org/en railsinstaller大大简化了rails的安装。除了windows下面的外,还有iMac下面的安装包。

2、下载wamp,集成了apache,MySQL,php,使用非常方便。对应的官网是:http://www.wampserver.com/en/

  网站部署一般都需要wamp,也就是windows+apache+mysql+php的环境。流行的集成环境有两个wampserver和xampp,这里使用的是wampserver

3、下载ImageMagick,这个是图型生成工具,redmine用于生成pdf等内容,也可以不安装。这个东西我安装的时候有些问题,所以没有安装。

4、redmine的源文件,这里下载的是redmine2.3.3 ,发布版本下载列表地址是:http://rubyforge.org/frs/?group_id=1850

安装文件准备好后,就可以开始安装了。

1、安装railsinstaller,如果不需要选择目录,就一路安装下去就可以了

2、安装wamp,先安装vc2010的环境vcredist_x86.exe, 再安装wamp,如果不需要选择目录,就一路安装下去就可以了

   3、把redmine解压到c:\redmine(你可以自己解压目录)

4、安装ruby下的mysql2,这里使用的是wamp中的mysql,我这里wamp是默认安装,也就是安装在c:\wamp目录下面,那边在这里,mysql的目录是C:\wamp\bin\mysql\mysql5.6.12。将C:\wamp\bin\mysql\mysql5.6.12\lib下的libmysql.dll和libmysqld.dll复制到c:\windows\system32中

    进入dos命令提示符下面,输入

gem install mysql2 — ‘–with-mysql-lib=”C:\wamp\bin\mysql\mysql5.6.12\lib” –with-mysql-include=”C:\wamp\bin\mysql\mysql5.6.12\include”‘

注:这里需要mysql对应的头文件和库文件目录,否则会安装失败。输入gem list就可以看到mysql2对应的版本号

5、配置数据库 运行wamp,然后配置apache,如下图操作

然后找到配置中的directory配置,找到Allow from 127.0.0.1改为Alloc from all,如下图所示

然后修改C:\wamp\alias下的phpmyadmin.conf,将

Options Indexes FollowSymLinks ExecCGI

AllowOverride all

Order Deny,Allow

Deny from all

Allow from 127.0.0.1

Allow from ::1

Allow from localhost

中的Allow from 127.0.0.1改为Alloc from all,然后重启wamp, 这样就可以局域网对mysql操作了。

我这里的ip是192.168.1.30,在浏览器地址栏输入http://192.168.1.30/phpmyadmin/,这样就可以进入phpmyadmin操作了,这里root默认是没有密码,所以,先修改root的密码为helloredmine,(你自己实际情况调整)

6、准备redmine数据库

在phpmyadmin操作sql

CREATE DATABASE redmine CHARACTER SET utf8;
CREATE USER ‘redmine’@‘localhost’ IDENTIFIED BY ‘my_password’;
GRANT ALL PRIVILEGES ON redmine.* TO ‘redmine’@‘localhost’;

 7、配置redmine的数据库

在c:\redmine\config目录下,复制database.yml.example为database.yml,然后编辑它,来配置。

找到production项,并配置,配置如下:(因为都是默认,在这里只要配置密码就可以了)

production:

adapter: mysql2

database: redmine

host: localhost

username: root

password: 123456

encoding: utf8

8、安装redmine    在dos命令提示下,我们进入到c:\redmine目录 然后执行

bundle install –without development test postgresql sqlite

注意:如果在安装过程,有可能因为网络的问题,造成个别的安装不了,那就用gem install xxxxx来安装指定的,安装完成后,再执行上面的bundle install命令。直到安装完成。

安装成功结果如下

然后再输入rake generate_secret_token,设置sessiond加密存贮

9、初始化redmine的数据库    在DOS命令提示符下面,输入下面的命令

set RAILS_ENV=production

rake db:migrate

再输入下面的命令,这里会设置默认语言

set RAILS_ENV=production

set REDMINE_LANG=zh

rake redmine:load_default_data

如下图,则表示完成

10、运行  在DOS命令提示符下,输入:ruby script/rails server webrick -e production

安装成功,然后在浏览器,输入

http://192.168.1.30:3000

就可以看到redmine的主页了,初始管理员的账号是admin,密码是admin,然后就可以进去玩了。到这里就安装完成。如果还需要配置email和svn,请参与官网提示的安装指南 http://www.redmine.org/projects/redmine/wiki/RedmineInstall

一些常见问题的补充说明:

如果运气足够好的话,你可以从第一步一路顺畅的走到第十步。下面是我碰到的一些问题。

1、gem install mysql2 的时候可能因为网络问题,没有安装成功。 多试几次就可以了。

2、正常来说WAMP Server的系统托盘图标应该是绿色的。如果不是的话,可能是某些服务开启失败了。最常见的可能是80端口冲突导致apache服务启动失败。我碰到的情况是因为我之前安装过xamp,所以两个apache冲突了。 删掉xamp后就正常了。 要想删掉xamp需要先关闭所有的相关服务。

3、mysql的默认是没有密码的。可以通过登陆mysql控制台,然后使用sql语句修改密码

   mysql> use mysql;

mysql> UPDATE user SET Password = PASSWORD(‘123456’) WHERE user = ‘root’;
mysql> FLUSH PRIVILEGES;

  其中123456就是新的密码。这里要注意sql语句最后的分号不要漏掉。 并且sql执行可能出现失败的情况,多试几次。

4、修改完mysql密码后,php对应的登陆密码也要修改,否则提示访问被拒绝。配置文件的路径是

   C:\wamp\apps\phpmyadmin4.0.4\config.inc.php

  在其中添加

$cfg[‘Servers’][$i][‘AllowNoPassword’] = false;
$cfg[‘Servers’][$i][‘user’] = ‘root’; // MySQL user 访问phpmyadmin使用的mysql用户名
$cfg[‘Servers’][$i][‘password’] = ‘123456’; // MySQL password (only needed对应上述mysql用户名的密码

5、redmine的mysql登陆密码配置文件路径是

C:\redmine\config\database.yml

production:
adapter: mysql2
database: redmine
host: localhost
username: root
password: 123456
encoding: utf8

由于我们使用的是production,所以只关心这个就足够了。 这里对应上文中第9步,初始化redmine数据库,如果在phpMyAdmin中看不到redmine的数据库,就是这里出问题了。

6、部署好,能够正常访问了,默认的管理员账户和密码都是admin,所有新建账号都需要通过管理员账号激活才能正常使用