Redmine+Apache+SVN+SMTP的安装配置

【概述】

Redmine是一个Web上的灵活的开源项目管理工具,基于Ruby on Rails框架,跨平台和数据库。它具备了广泛的项目管理平台特点同时,还提供了诸多的独有的特性。包括了内建的wiki、BUG问题跟踪、SVN集成等。

Redmine可以使用BitNami的一体化安装包,这会使得安装部署redmine一键到底。这个不太适用于公司,自己玩玩还行。

本文讲述了Redmine的安装,与Apache集成,与SVN集成,邮件配置,备份。

 

【环境】

Ubuntu10.10

 

【Redmine安装配置步骤】

1. 安装LAMP环境

apt-get install tasksel
tasksel install lamp-server

要求输入mysql的root用户密码:比如输入mysql*0

 

2. 安装Ruby on Rails环境
apt-get install ruby

ruby 1.8.7被安装

apt-get install rubygems

gem 1.3.7被安装

gem install rails -v=2.3.11

但rails --version查看,显示未安装,不知怎么回事

apt-get install rails

rails 2.3.5被安装

gem install rake -v=0.8.7

rake 0.8.7 被安装

gem install rack -v=1.1.1

安装成功,但rack --version提示rack找不到命令

 

3. 安装Redmine和MySQL数据库

apt-get install redmine redmine-mysql

将会出现配置界面:

Configure database for redmine/instances/default:选是

Database type to be used by redmine/instances/default:选mysql

Password of database's administrative user:输入mysql*0

MySQL application password for redmine/instances/default:输入mysql*0

Password confirmation:输入mysql*0

确定,选retry,之后又会出现可视化的配置界面,输入mysq*0,之后完成配置,界面退出。

此时终端提示在/etc/redmine/default下生成session.yml和database.yml

Redmine被安装在/usr/share/redmine和/etc/redmine里

 

4. 创建redmine数据库

启动Mysql数据库:

/etc/init.d/mysqld start

创建数据库与设置权限:

mysql -u root -p

输入密码,比如mysql*0

创建一个供 Redmine 使用的数据库:

create database redmine character set utf8;

 创建Redmine数据库的用户及密码,并赋予权限:(’引号之间需修改为自己的用户名、服务器名、密码)

create user 'redmine'@'localhost' identified by 'my_password';

无错误提示,则表示创建成功。

赋权操作:

grant all privileges on redmine.* to 'redmine'@'localhost';

PS:如果创建用户出了什么差错,可以使用如下命令删除用户:
drop user 'redmine'@'localhost';
quit;退出mysql

向数据库中插入默认配置:

RAILS_ENV=production rake redmine:load_default_data

PS:这一步可选,但推荐有这一步。可使Redmine显示中文。 as you can define your own configuration from scratch. It will load default roles, trackers, statuses, workflows and enumerations.

 

5. 创建日志log的文件夹和log文件

在/usr/share/redmine 目录下创建文件夹 log, 然后在log文件夹下新建一个空的文件,文件名为production.log

 

6. 启动redmine,建议作为服务执行
sudo /usr/share/redmine/script/server -e production -d

 

7. 检查Redmine是否安装成功

注意:在前面四个步骤中,如果MySQL和Redmine的安装顺序不一样,可能在/etc/redmine/default目录下没有session.xml,database.xml这两个文件。这就需要进行下面操作,自己生成这两个文件。

在/usr/share/redmine/ 下执行生成会话密钥:
RAILS_ENV=production rake generate_session_store 

于是在/etc/redmine/default下生成了session.yml

创建数据库结构:

在/usr/share/redmine/templates/ 目录下有一个database.yml.template的文件,将它放到 /etc/redmine/default/目录下并修改文件名为 database.yml,然后打开文件修改配置。

配置如下:
production:
  adapter: mysql    //数据库类型
  database: redmine    //数据库名
  host: localhost    //数据库主机
  port: 3306    //端口
  username: root    //数据库用户名
  password: mysql*0    //数据库密码
  encoding: utf8    //编码

然后在/usr/share/redmine/下生成数据库结构及初始的数据。经过十几秒后生成。

RAILS_ENV=production rake db:migrate 

 

 

【在Apache上部署Redmine】

上面的Redmine使用WEBrick,虽然占用的内存更少,但是访问速度慢。如果大负载的服务器,推荐使用Apache。Apache运行ROR有多种方式,这里使用passenger。

apt-get install build-essential
apt-get install ruby-dev
gem install passenger
gem environment

建议先查看RubyGems Environment,其中,EXECUTABLE DIRECTORY就是命令的全路径,所以对于我例子里的情况执行
/var/lib/gems/1.8/bin/passenger-install-apache2-module

根据提示安装和部署。passenger会在本机编译并成为apache的一个模块。安装过程中会遇到下面的提示信息(根据版本的不同,信息也会稍有变化):

出现Phusion Passenger Apache 2 module installer界面:按Enter
很多not found,按Enter

按提示依次安装:

apt-get install libcurl4-openssl-dev
apt-get install libssl-dev
apt-get install zlib1g-dev
apt-get install apache2-prefork-dev
apt-get install libapr1-dev
apt-get install libaprutil1-dev

全部安装成功!

再重新
/var/lib/gems/1.8/bin/passenger-install-apache2-module 

一直Enter直到完成。

编辑/etc/apache2/apache2.conf文件。为即将修改的文件作备份是个好习惯。

cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf_backup
gedit /etc/apache2/apache2.conf

加入下面内容:

LoadModule passenger_module /var/lib/gems/1.8/gems/passenger-3.0.13/ext/apache2/mod_passenger.so
PassengerRoot /var/lib/gems/1.8/gems/passenger-3.0.13
PassengerRuby /usr/bin/ruby1.8

注意:这里最好去/var/lib/gems目录下确认路径。

在/etc/apache2/sites-available添加一个站点:
cd /etc/apache2/sites-available
gedit redmine 

并添加如下内容:

RailsBaseURI /redmine 

在web根目录建立redmine主目录的符号链接,并设置权限:

ln -s /usr/share/redmine/public /var/www/redmine  
chown -R www-data:www-data /var/www 

重启apache:

/etc/init.d/apache2 restart 

启用redmine站点:

a2ensite redmine 

在浏览器里输入http://your_server_ip/redmine就会访问redmine站点

 
 
 
【Redmine与SVN的集成】
如果Redmine和SVN安装在同一台机器上,只要在Redmine里新建一个项目,在“配置”->“版本库”中填入对应的SVN版本库地址即可,如下图:

如果Redmine和SVN不在同一台机器上,则会在配置后,点击“版本库”标签,出现错误:版本库中不存在该条目和(或)其修订版本。英文是:The entry or revision was not found in the repository. 这是因为Redmine本身没有集成SVN命令,而是借助SVN的命令来获取。解决方法是:在装有Redmide的机器上安装SVN。这个困扰我好久啊.....

apt-get install subversion

 

 

【邮件配置】

apt-get install postfix

在出现的可视化安装界面上,点确定,选Internet,输入一个mail名称。

编辑email.yml文件:

cp /usr/share/redmine/config/email.yml.example /usr/share/redmine/config/email.yml
gedit /usr/share/redmine/config/email.yml

移动到末尾可以看到默认的配置。将production改为如下所示,其中域名等信息按实际情况替换。

production:
  delivery_method: :smtp
  smtp_settings:
    address: smtp.xxx.com      
    port: 25
    domain: xxx.bar
    # authentication: :login
    # user_name: xxx
    # password: xxx
保存文件,重启apache服务,登录页面”管理”—->”配置”—->”邮件通知”,修改邮件头,邮件签名,然后点击右下角的”发送测试邮件”,就可以测试你的邮件服务配置是否成功了。

修改邮件里的服务器链接:登录页面”管理”—->”配置”—->“一般”,主机名称。

下面这个图在我完成所有配置后总出现,原因是我没有把email.yml放在/etc/redmine/default下面。

cp /usr/share/redmine/config/email.yml /etc/redmine/default/

 邮件配置成功!

 

 

【Redmine的备份】

1. 备份文件

rsync -a /var/lib/redmine/default/files /home/redmine_backup

2. 备份MySQL数据库

/usr/bin/mysqldump --default-character-set=utf8 -uroot -pmydql*0 -B redmine > /home/redmine_backup/redmine_backup.sql

 

 

 

 

 

【参考资料】

Redmine+Apache+SVN+Postfix完整配置指南 http://www.swordair.com/docs/redmine-complete-configuration-on-ubuntu/

redmine安装在Ubuntu 11.04 http://www.cnblogs.com/qq78292959/archive/2011/12/19/2293623.html

Installing Redmine http://www.redmine.org/projects/redmine/wiki/RedmineInstall

Ubuntu 10.04 or 12.04 using Passenger http://www.redmine.org/projects/redmine/wiki/HowTo_Install_Redmine_in_Ubuntu

 

posted @ 2012-07-05 09:40  水芊芊  阅读(3410)  评论(0编辑  收藏  举报