| 
	Redmine:是一个基于web的项目管理软件,用Ruby开发的。是基于ROR框架开发的一套跨平台项目管理系统,是项目管理系统的后起之秀,据说是源于Basecamp的ror版而来,支持多种数据库,除了和DotProject的功能大致相当外,还有不少自己独特的功能,例如提供wiki、新闻台、时间跟踪、feed聚合、导出pdf等等,还可以集成其他版本管理系统和BUG跟踪系统,例如SVN、CVS、TD等等。配置功能强大而且方便,自定义属性和更新通知也很实用。下面我们来部署redmine+svn项目管理系统(需要严格的按照官方的安装文档安装对应的ruby包) 
	环境:centos-5.5 redmine-1.2.0 subversion-1.6.17 
	一、下载所需要软件包 
	
		
			wget ftp:
			wget http:
			wget http:
			wget http:
			wget http: 
	二、先配置LNMP环境 
	参考:CentOS 5.5下安装mysql5.1.57+php5.2.17(FastCGI)+nginx1.0.1高性能Web服务器 
	三、redmine安装(对各软件包版本要求非常严格,必须对应相应版本,否则会出现不可预知的错误) 
	1、ruby安装: 
	
		
			tar zxvf ruby-1.8.7.tar.gz
			cd ruby-1.8.7
			./configure --prefix=/usr/local/ruby
			make && make install
			cd ..
			修改~/.bash_profile,将ruby目录加入root环境变量
			或者  echo "export PATH=$PATH:/usr/local/ruby/bin/" >> /etc/profile 
	2、rubygems 安装 
	安装rubygems ,注意一定要是1.7.0以下的版本,不然无法正常启动使用redmine。我就是因为看了一个他人写得中文文档,安装了1.7.0版本,所以redmine一直无法正常工作,为此走了一大圈弯路。最后在官方文档上才找到问题所在。下面是官网上的一些对版本要求的描述。Ruby 1.9 is not supported yet. You have to use Ruby 1.8.x as stated above.
 RubyGems 1.3.7 or higher is required with following limitations :
 Rails 2.3.5 will fail with RubyGems 1.5.0 or later, stick to previous versions of RubyGems !
 Rails 2.3.11 will fail with RubyGems 1.7.0 or later, stick to previous versions of RubyGems !
 Rake 0.8.7 is required (rake 0.9.x is not supported by Rails yet)
 Rack 1.1.x is required, 1.1.0 has a bug with quotes (#8416). Database migration would fail with other version.
 Mongrel 1.1.5 needs a patch attached to #7688 to work fine with Rails 2.3.11. In case of upgrade, another issue may appear for some time after migration (#7857).
 I18n 0.4.2 is required for Redmine >= 1.0.5
 
	
		
			tar zxvf rubygems-1.6.2.tgz
			cd rubygems-1.6.2
			ruby setup.rb
			cd .. 
	3、安装rails rack i18n mysql passenger 
	
		
			gem install rails -v=2.3.11
			gem install rack -v=1.1.1
			gem install i18n -v=0.4.2
			gem install mysql --no-rdoc --no-ri -- --with-mysql-dir=/data/soft/mysql    #我的mysql是编译安装在/data/soft/mysql目录下的
			gem install passenger
			gem install mongrel mongrel_cluster 
	四、安装配置redmine 
	1、解压redmine 
	
		
			tar zxvf redmine-1.2.0.tar.gz
			mv redmine-1.2.0 /data/www/redmine
			chown -R www. /data/www/redmine 
	2、建立数据库 
	
		
			/data/soft/mysql/bin/mysql -uroot -p
			mysql> createdatabase redmine characterset utf8;
			mysql> grantallon redmine.* to 'redmine'@'localhost' identified by 'redmine';
			mysql> flush privileges; 
	3、修改redmine mysql数据库配置. 
	
		
			cd /data/www/redmine/config
			cp database.yml.example database.yml
			vi database.yml
			production:
			adapter: mysql
			database: redmine
			host: localhost
			username: redmine
			password: redmine
			encoding: utf8 
	注意:冒号后面有一空格。。。 
	4、创建运行数据库: 
	生成会话存储密钥: 
	
		
			cd /data/www/redmine
			rake generate_session_store 
	然后开始创建数据库表结构,在redmine的根目录下运行: 
	
		
			RAILS_ENV=production rake db:migrate 
	读取默认配置数据,当遇到选择语言(Select language)时,选择zh: 
	
		
			RAILS_ENV=production rake redmine:load_default_data 
	5、配置mongrel_cluster 
	
		
			cd /data/www/redmine
			mongrel_rails cluster::configure -e production -p 8000 -a 127.0.0.1 -N 3 
	6、启用mongrel_cluster 
	
		
			cd /data/www/redmine
			mongrel_rails cluster::start 
	启动如果出错如下: 
	
		
			starting port 8000
			!!! Path to pid file not valid: tmp/pids/mongrel.8000.pid
			mongrel::start reported an error. Use mongrel_rails mongrel::start -h to get help.
			 
			starting port 8001
			!!! Path to pid file not valid: tmp/pids/mongrel.8001.pid
			mongrel::start reported an error. Use mongrel_rails mongrel::start -h to get help.
			 
			starting port 8002
			!!! Path to pid file not valid: tmp/pids/mongrel.8002.pid
			mongrel::start reported an error. Use mongrel_rails mongrel::start -h to get help. 
	创建/data/www/redmine/tmp/pids目录即可 
	
		
			mkdir -p /data/www/redmine/tmp/pids 
	启动成功如下: 
	
		
			[root@CentOS5 redmine]# mongrel_rails cluster::start
			starting port 8000
			starting port 8001
			starting port 8002 
	7、配置nginx 
	
		
			vi /data/soft/nginx/conf/nginx.conf
			 
			upstream mongrel
			{
			server 127.0.0.1:8000;
			server 127.0.0.1:8001;
			server 127.0.0.1:8002;
			}
			 
			server
			{
			listen 80;
			server_name 192.168.8.32;
			root   /data/www/redmine;
			index   index.html index.htm;
			 
			location /
			{
			proxy_pass http:
			proxy_redirect off;
			proxy_set_header Host $host;
			proxy_set_header X-Real-IP $remote_addr;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			}
			} 
	五: 访问redmine测试: 
	 直接用ruby内置webrick也可启动redmine
 
	
		
			/usr/local/ruby/bin/ruby /data/www/redmine/script/server webrick -e production & 
	启动成功如下: 
	
		
			[root@CentOS5 redmine]# /usr/local/ruby/bin/ruby /data/www/redmine/script/server webrick -e production &
			[1] 3526
			[root@CentOS5 redmine]# => Booting WEBrick
			=> Rails 2.3.11 application starting on http:
			=> Call with -d to detach
			=> Ctrl-C to shutdown server
			[2011-06-2409:30:47] INFO  WEBrick 1.3.1
			[2011-06-2409:30:47] INFO  ruby 1.8.7 (2008-05-31) [i686-linux]
			[2011-06-2409:30:47] INFO  WEBrick::HTTPServer#start: pid=3526 port=3000 
	访问redmine测试: http://192.168.8.32:3000(责任编辑:IT)
  |