`
阅读更多

Update (2011-11-29):

各位看官请注意,Win下的解决方案,instantRails已经不是首选,换Railsinstaller 感谢EngineYard 技术支持,winror一个强大支持

没有Devkit在win下安装gem会别扭死

当前支持如下:

(我可不想我的老文坑人,所以夜猪,会尽可能更新自己的老文)

本文旨在对相关资料整理

 

使用ROR开发的项目管理系统Redmine-中文版  

http://chaoqun2003.iteye.com

http://218.107.133.32:5000/wiki/ezwork

http://github.com/zouchaoqun

 

      ● Redmine 0.8.2: http://rubyforge.org/projects/redmine/
  ● InstantRails-2.0-win: http://rubyforge.org/projects/instantrails/

 
  本文介绍了如何在局域网的服务器上安装Redmine,文中一部分是是网上下载的,一部分是自己的原创。由于本人要在公司的内部服务器上安装一个Redmine,然而在网上找到的介绍Redmine的安装的文章都大同小异,实践过程中遇到了不少问题。经过几天的奋战,终于把Redmine完全安装好了,现在把我自己的心得总结一下,以便大家在遇到同样的问题时少走一些弯路。
  首先总结一下本文解决了哪些别人没有解决的问题:(1)将Redmine集成到了已有的PHPNow系统中;(2)总结了安装InstantRails后应该修改哪些配置文件;(3)在非上网机上将RedMine安装为Windows服务,使其能开机自动运行。
  
  1 Redmine介绍
  是一个基于web的项目管理软件,用Ruby开发的。(可以想象成用php写的n个文件,可以在网页上浏览,就像wordpress。)
  
  Redmine:这是基于ROR(Ruby on Rails)框架开发的一套跨平台项目管理系统,是项目管理系统的后起之秀,据说是源于Basecamp的ror版而来,支持多种数据库,除了和DotProject的功能大致相当外,还有不少自己独特的功能,例如提供wiki、新闻台、时间跟踪、feed聚合、导出pdf等待,还可以集成其他版本管理系统和BUG跟踪系统,例如SVN、CVS、TD等等。配置功能强大而且方便,自定义属性和更新通知也很实用,详细的介绍可以看看清华同方的redmine站点。中文版Redmine在线演示:ezWORK、英文版可看Redmine提供的官方演示。
  
  协作对于一个团队来说至关重要,尤其是产品开发的团队,项目化的管理方式已经深入人心,MS Project 所有做过项目管理的人都应该了解,但是每天面对一张静态的甘特图来分配资源、调整进度的做法已经不合时宜了,在 Web 服务盛行的时代,以沟通为核心概念的小型团队项目管理服务 Basecamp 取得了成功,同时还捧红了 Ruby on Rails 框架。
  沟通与共享是现代项目管理的核心,这种 Web 形式的项目管理系统通过“项目(Project)”的形式把成员、任务(问题)、文档、讨论以及各种形式的资源组织在一起,大家参与更新任务、文档等内容来推动项目的进度,同时系统利用时间线索(Timeline)和各种动态的报表(Report)形式来自动给成员汇报项目进度。
  在技术开发领域,Bug 追踪、Wiki 和 版本控制的集成对于项目管理系统来说必不可少,当然能够实现这些功能的系统也有很多,例如:
  ● Trac:基于 Python 的开源程序,应该是最早将 Ticket 与项目结合起来的开发管理系统,支持 Wiki、Timeline、Report 和项目模块分级与里程碑定义,还能够绑定查看SVN内容,简单易用,但是团队开发速度太慢,很多功能确实,无法进行权限分配、多项目管理,配置不够灵活,实在有些遗憾
  ● Jira + Confluence:基于 Java 的 Bug 追踪和企业 Wiki 系统,需要购买,而且很贵,Jira 的 Bug 和事务流管理能力很强大,Confluence 应该是目前最好的企业 Wiki 系统,扩展性强,但是某些操作和体验显得有些跟不上时代
  ● ActiveCollab:基于 PHP 的 Web 项目管理程序,曾经是开源版本的,后来给商业化了,需要购买,Trac 与 Basecamp 的模仿者,安装和使用简单
  还有许多 SaaS 方式的在线项目管理服务,例如:Comindwork、LiquidPlanner 、MyQuire、ProjectSpaces、Huddle、PlanHQ、Goplan 等,不过介于中国的出口带宽情况和用户心态问题,将重要的项目数据放在遥远的第三方目前来说还是有些不现实的…
  啰嗦了很多,下面介绍主角 Redmine,一个 Trac + Basecamp 的混合体,吸取了两个系统的有点,基于 Ruby on Rails 框架开发,开放源代码,可以跨平台部署,indigo 觉得它应该是小型开发团队项目管理的首选系统。
  功能:
  ● 多项目和子项目支持
  ● 可配置的用户角色控制
  ● 可配置的问题追踪系统
  ● 自动日历和甘特图绘制
  ● 支持 Blog 形式的新闻发布、Wiki 形式的文档撰写和文件管理
  ● RSS 输出和邮件通知
  ● 每个项目可以配置独立的 Wiki 和论坛模块
  ● 简单的任务时间跟踪机制
  ● 用户、项目、问题支持自定义属性
  ● 支持多种版本控制系统的绑定(SVN、CVS、Git、Mercurial 和 Darcs)
  ● 支持多 LDAP 用户认证
  ● 支持用户自注册和用户激活
  ● 多语言支持(已经内置了zh简体中文)
  ● 多数据库支持(MySQL、SQLite、PostgreSQL)
  ● 外观模版化定制(可以使用 Basecamp 的主题,感觉上就像是自己架设的 Basecamp 服务)
  
  2 Redmine安装与配置
  下载InstantRails,解压出来。可以把InstantRails想象成要在本机配置php服务器,里面有mysql,phpmyadmin等等。国内我觉得比较好的有“PHPNOW”)下载的包是绿色包,里面有mysql数据库phpmyadmin等等,直接复制到任意一个文件夹里面即可。注意,路径中不要有空格!

  2.1 Redmine安装
  现在redmine用到的数据库和Instantrails里面的MySQL数据库是脱离的,也就是说,接下来的任务,实际上是将redmine的数据与数据库关联,即:导入一些数据库到MySQL里面。仅此而已!(可以想象如同在phpMyAdmin里面导入*.sql的文件,导入数据库。)
  
  方法:
  1) “PHPnowCNGR/rails_apps/redmine/config"下,有文件“database.yml.example”,重命名一下,改成“database.yml”。我的想法是大概将如同*.doc.bak文件的bak去掉吧。这个是redmine数据库的配置文件,里面有数据库的相关信息。
  内容包括:

写道
  production:
  adapter: mysql
  database: redmine
  host: localhost
  username: root
  password:
  encoding: utf8
  
  development:
  adapter: mysql
  database: redmine_development
  host: localhost
  username: root
  password:
  encoding: utf8
  
  test:
  adapter: mysql
  database: redmine_test
  host: localhost
  username: root
  password:
  encoding: utf8

 

  2) 点击“InstantRails”目录里面的“InstantRails.exe”文件。这就是启动环境(Apache)的主程序了。
  
  3) 进入phpMyAdmin下,新建三个数据库(用sql命令方式):
  create database redmine character set utf8;
  (注:进入phpmyadmin下有两种方式。法1:浏览器输入http://127.0.0.1/mysql/    法2:InstantRails界面(就是刚才点击InstantRails.exe后的程序界面)的I→Configure→Database (via PhpMyAdmin)”。如果该栏是灰色的,表示你安装后没重启机器。重启一下即可。这个问题郁闷了我N个小时)
  
  4) 往数据库里面导入数据
  点击InstantRails界面(就是刚才点击InstantRails.exe后的程序界面)的I→Rails Applications→Open Ruby Console Window栏目,然后会跳出dos窗口。在里面输入命令:

  cd redmine-0.8.2 
  rake db:migrate RAILS_ENV="production" 
  rake load_default_data RAILS_ENV="production" 

 
  其中rake db:migrate RAILS_ENV="production" 是创建数据库;rake load_default_data RAILS_ENV="production" 是指明当前项目运行环境为production ,中间会提示选择语言,选择 zh(中文) 。
5) 现在配置结束了,点击InstantRails界面(就是刚才点击InstantRails.exe后的程序界面)的I→Rails Applications→Manage Rails Applications栏目,如下,点击“Start with Mongrel”(启动redmine这个应用程序)。跳出一个dos窗口,不要关闭。现在就可以浏览你配置好的RedMine了。
  
  6) 浏览器输入:http://localhost:3000/ 即可。(注意:管理员id和密码都是“admin”。界面还是英文界面,登录后可以在“设置”里面更改成“简体中文”。)
  
  zml:如果使用InstantRails启动Redmine,则以下配置文件中的路径需要修改为InstantRails安装的实际路径:

写道
  ● E:\InstantRails\InstantRails.ini
  ● E:\InstantRails\use_ruby.cmd
  ● E:\InstantRails\apache\conf\httpd.conf
  ● E:\InstantRails\apache\php.ini
  ● E:\InstantRails\mysql\my.ini

 

  2.2 配置邮件通知
  Redmin可以为一些操作提供邮件通知如主题改变,新增问题等,这样可以让开发人员及时知道变化。在使用此功能前需要先配置邮件服务器,将C:\InstantRails\rails_apps\redmine-0.8.0\config目录下的email.yml.example更名为email.yml,然后用文本编辑器打开此文件,将内容改为如下:

  # Outgoing email settings 
  production: 
    delivery_method: :smtp 
    smtp_settings: 
      address: smtp.163.com 
      port: 25 
      domain: 163.com 
      authentication: :login 
      user_name: PM@163.com 
      password: 123456 
    
  development: 
    delivery_method: :smtp 
    smtp_settings: 
      address: smtp.163.com 
      port: 25 
      domain: 163.com 
      authentication: :login 
      user_name: PM@163.com 
      password: 123456 

   
  这里我采用的是163的Smtp服务器来发送邮件
  然后就可以在Redmine的界面中启用邮件通知,设置一下发件人地址和签名即可。
  2.3 集成SubVersion
  集成SubVersion就很简单了,在版本库页面选择Subersion,然后填写SVN仓库的url和登录Subversion的用户名,密码即可通过Redmine查看svn仓库中的文件并可比较差异。
  2.4 Redmine的WIKI
  Redmine的Wiki功能比较简单,使用wiki时一定要注意在标记的前后都要留有空格,否则会无效如变粗字体:*Ning* 其中第一个 * 的前面要留有一个空格,而第二个*后面也要留有一个空格,其他标记类似。
  在Redmine中可以自定义工作流程,工作流程是指某一个角色针对某一类问题(如功能,缺陷和支持)的状态迁移规则,此时该类问题就被跟踪(此时该类问题也称之为Tracker),状态迁移规则决定了某类问题是否可以从一个状态迁移到另外一个状态
  2.5 更改Theme
  下载Theme,这里我用黑黑的BaseCamp的Style :)
  1.下载地址
  http://theill.com/stuff/redmine/themes/basecamp/stylesheets/application.css
  2.安装方法
  在public\themes下新建目录basecamp,加入样式目录stylesheets,再把css文件加入其中即可,至于如何选用,下面运行Redmine之后进去玩玩,就能找到了,很easy的:)
  
  2.6 Redmine如何与PHPNow集成
  作者按:网上介绍的安装方法一般都是使用InstantRails的,InstantRails中包含了Apache、MySQL。如果已经安装了PHPNow,则同时启动两套Apache和MySQL总是一件不爽的事。实际上,我们只要把InstantRails中的两个目录拷贝到PHPNow中就可以了:Rails-apps、Ruby。
  
  3 Redmine的启动
  3.1 命令行启动Redmine
  3.1.1 方法1:
  使用如下命令行可以启动Redmine:

    CD E:\PHPnowCNGR 
    PATH E:\PHPnowCNGR\ruby\bin;E:\PHPnowCNGR\mysql\bin;%PATH% 
    cd rails_apps\redmine-0.8.2 
    mongrel_rails start -e production -p 3000 

 
  注意:上面最后一条命令必须在Redmine所在的目录下执行!
  3.1.2 方法2:
  在Redmine目录下执行:

    CD E:\PHPnowCNGR 
    :PATH E:\PHPnowCNGR\ruby\bin;E:\PHPnowCNGR\mysql\bin;%PATH% 
    cd rails_apps\redmine-0.8.2 
    ruby script/server -e production 

 
  要求同方法1。如果在其他目录下执行会出错!
  
  3.2 将RedMine安装为Windows服务,开机自动运行
  前段时间用的RedMine,Ruby on Rails写的,通过命令行ruby命令启动,不太方便。因为当系统自动更新重启之后,所有用户就成了注销状态,用户态下执行的命令行进程自然也就没了。
  RedMine现在在我们组俨然成了最重要的工具,开机不能自动启动可不行。
  Ruby提供一个安装Ruby程序为服务的包:mongrel_service。安装其实很简单,只要命令行下运行gem:
  步骤1:下载和更新mongrel_service
    gem install mongrel_service
  此过程中会下载一些其他必须的包。
  经实验发现如果没有上网,则执行该命令后会产生如下显示:

  E:\PHPnowCNGR>cd rails_apps 
  E:\PHPnowCNGR\rails_apps>gem install mongrel_service 
  ERROR:  While executing gem ... (Gem::RemoteFetcher::FetchError) 
      getaddrinfo: no address associated with hostname. (SocketError) 
          getting size of http://gems.rubyforge.org/Marshal.4.8 

 
  作者按:如果是在没有连接互联网的机器上执行该命令,则显示以上信息后就退出了。解决的办法是:先在上网机上执行以上命令,完成后会下载一些文件到 .\ruby\lib\ruby\gems 目录中,其中 .\ruby\lib\ruby\gems\1.8\gems\mongrel_service-0.3.4-x86-mswin32\bin 目录中有一个文件 mongrel_service.exe(本文的附件即为此文件) ,把这个文件拷贝到 .\ruby\bin 下就可以继续执行后面的命令了!
  
  步骤2:使用mongrel_service安装Redmine服务
  然后将RedMine使用mongrel_service安装成Windows服务:

  mongrel_rails service::install -N RedMine -c D:\WebRoot -p 80 –e production 
  mongrel_rails service::install -N RedMine -c E:\PHPnowCNGR\rails_apps\redmine-0.8.2 -p 80 –e production 

 
  这里,我指定服务名为RedMine,我的RedMine在D:\WebRoot,你的要修改,注意指向truck的根目录。监听80端口。
  
  步骤3:修改RedMine服务
  然后修改启动方式为自动启动,并添加MySQL服务为其依赖服务(如果你的MySQL服务器不是本机就不用麻烦了):

  sc config RedMine start= auto depend= MySQL5_pn 

 
  注意,执行sc config系列指令,服务必须是未启动的才行,否则会出错。
  作者按:特别需要注意的是:”atart=”和”depend=”后面必须有空格,否则不能正确执行
  
  步骤4(删除时使用):删除RedMine服务
  将来如果想去掉这个服务,只要执行:

  mongrel_rails service::remove -N RedMine

 

分享到:
评论
4 楼 Einsdan 2011-05-31  
redmine导出csv时,中文乱码。应该怎么解决啊?希望得到您的帮助~
3 楼 夜鸣猪 2010-08-27  
感谢补充
2 楼 wozhidao 2010-08-27  
protect_from_forgery :except => [:login,:register]
这样才行,安全性不说,所有controller里都要加,也是件挺麻烦的事
1 楼 wozhidao 2010-08-27  
把rails应用注册为windows服务后,所有的提交都出错

ActionController::InvalidAuthenticityToken

相关推荐

    如何在局域网安装Redmine(原创)

    介绍了如何在局域网的服务器上安装Redmine,文中很大一部分是自己的原创。...(2)总结了安装InstantRails后应该修改哪些配置文件;(3)在非上网机上将RedMine安装为Windows服务,使其能开机自动运行。

    Redmine在Windows下实现自动备份和异地备份

    Redmine在Windows下实现自动备份和异地备份 1.Redmine备份内容 Redmine在Windows下的自动备份实现,包括: 1)Redmine目录的全备份(1周或1个月备份1次,由windows计划来调度执行),将整个Redmine安装的文件夹全部...

    BitNami的Redmine升级步骤

    BitNami的Redmine升级步骤 主要适合于redmine for windows的Upgrade

    Redmine API (Redmine 官方文档pdf版)

    Redmine API 官方文档pdf版

    基于ubuntu18.4的redmine的插件安装教程

    但Redmine本身不含有该功能需要另外安装相应的插件,本节主要介绍本地头像插件、office文档预览插件、pdf文档预览插件的安装与配置。本节中所有内容均在ubuntu18.4的服务器上实测验证通过的。本文档描述的内容在本人...

    项目管理redmine配置

    redmine 项目管理 软件 安装配置

    redmine_tagging, 为Redmine问题/wiki页面添加简单标签支持.zip

    redmine_tagging, 为Redmine问题/wiki页面添加简单标签支持 Redmine标签插件 这里插件向Redmine添加有用的标记功能:在边栏中标记云标记建议和自动完成Redmine搜索集成( 可能搜索 #tag 以查找 wiki/问题)基于标签的...

    Redmine缺陷数量统计

    用于统计Redmine的缺陷数量,按开发员和测试人员两种角度。下载后修改数据库链接后和统计日期即可使用。

    redmine_gitlab_hook plugin

    redmine gitlab plugin hook.可以用来集成gitlab与redmine。使得redmine代码库在gitlab库更新时自动拉取最新代码。

    支持Redmine'sRESTAPI的Nodejs库Node-Redmine.zip

    Node-Redmine是一个100%支持Redmine's REST API的Nodejs库。安装npm install node-redmine示例代码var Redmine = require('../lib/redmine'); /////////////////////////////////////////////////////////////...

    redmine中文使用手册

    redmine中文使用手册,不包含安装配置,只是教大家怎么使用redmine,安装教程很多所以我没写,使用的没有,所以把自己使用的经验教给大家方便大家快速入门

    redmine配置sso单点登录插件

    redmine本身没有提供单点登录功能,这个插件可以提供redmine的单点登录。解压后将这两个文件放置在redmine目录的plugins目录中。具体操作参照README.md。每个解压文件中都有个EADME.md

    redmine 2.6插件包

    redmine_zenedit:提供全屏编辑和黑色背景功能(貌似和ckeditor有冲突,使用ckeditor的时候无法启用这个功能) 插件安装目录 redmine/plugins/ 主题安装目录 redmine/public/theme/ 插件安装方法: 步骤1:bundle ...

    Redmine在项目管理中的应用

    Redmine在项目管理中的应用

    Mastering Redmine(PACKT,2ed,2016)

    Redmine is not only one of the popular open source project management applications but also one of the best project hosting and issue tracking solutions. This book is an update of our previous ...

    redmine数据库所有表结构的介绍

    redmine数据库所有表结构的介绍,做二次开发的能用到。

    Redmine2.6最新版下载+中文windows安装攻略+简介

    ]Redmine 是一个开源的、基于Web的项目管理和缺陷跟踪工具。它用日历和甘特图辅助项目及进度可视化显示。同时它又支持多项目管理。Redmine是一个自由开放源码软件解决方案,它提供集成的项目管理功能,问题跟踪,并...

    testlink与redmine的迁移和集成

    testlink与redmine的迁移和集成 testlink版本1.9beat5 redmine使用的是bitnami redmine2.1 有问题可与我联系

    Mastering.Redmine.2nd.Edition.1785881302

    Redmine is not only one of the popular open source project management applications but also one of the best project hosting and issue tracking solutions. This book is an update of our previous ...

    redmine plugin 甘特图 插件 EasyGanttFree

    免费版的 Easy Gantt 插件具有以下基本功能:支持redmine 3.*以及4.*的版本 以拖拽的方式更新任务和里程碑的起止时间 编辑恢复 日、周、月三种不同的时间轴视图 待解决问题列表,如某项任务按计划应该已经完成但仍...

Global site tag (gtag.js) - Google Analytics