安哥网络 发表于 2016-3-10 18:24:48

在Linux系统中将Redmine和SVN整合入Nginx的方法

在Linux系统中将Redmine和SVN整合入Nginx的方法
Nginx WEB服务器Nginx 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。

这篇文章主要介绍了在Linux系统中将Redmine和SVN整合入Nginx的方法,示例基于CentOS系统,并用到了Ruby脚本,需要的朋友可以参考下
Redmine:是一个基于web的项目管理软件,用Ruby开发的。是基于ROR框架开发的一套跨平台项目管理系统,是项目管理系统的后起之秀,据说是源于Basecamp的ror版而来,支持多种数据库,除了和DotProject的功能大致相当外,还有不少自己独特的功能,例如提供wiki、新闻台、时间跟踪、feed聚合、导出pdf等等,还可以集成IT论坛版本管理系统和BUG跟踪系统,例如SVN、CVS、TD等等。配置功能强大而且方便,自定义属性和更新通知也很实用。下面我们来部署redmine+svn项目管理系统(需要严格的按照官方的安装文档安装对应的ruby包)环境:centos-5.5 redmine-1.2.0 subversion-1.6.17一、下载所需要软件包wget ftp://ftp.ruby-lang.org//pub/ruby/1.8/ruby-1.8.7.tar.gzwget http://production.cf.rubygems.org/rubygems/rubygems-1.6.2.tgzwget http://rubyforge.org/frs/download.php/74944/redmine-1.2.0.tar.gzwget http://subversion.tigris.org/downloads/subversion-1.6.17.tar.gzwget http://subversion.tigris.org/downloads/subversion-deps-1.6.17.tar.gz
二、先配置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.gzcd ruby-1.8.7./configure --prefix=/usr/local/rubymake && make installcd ..
    修改~/.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.tgzcd rubygems-1.6.2ruby setup.rbcd ..
3、安装rails rack i18n mysql passengergem install rails -v=2.3.11gem install rack -v=1.1.1gem install i18n -v=0.4.2gem install mysql --no-rdoc --no-ri -- --with-mysql-dir=/data/soft/mysql#我的mysql是编译安装在/data/soft/mysql目录下的gem install passengergem install mongrel mongrel_cluster
四、安装配置redmine1、解压redminetar zxvf redmine-1.2.0.tar.gzmv redmine-1.2.0 /data/www/redminechown -R www. /data/www/redmine
2、建立数据库/data/soft/mysql/bin/mysql -uroot -pmysql> createdatabase redmine characterset utf8;mysql> grantallon redmine.* to 'redmine'@'localhost' identified by 'redmine';mysql> flush privileges;
3、修改redmine mysql数据库配置.cd /data/www/redmine/configcp database.yml.example database.ymlvi database.ymlproduction:adapter: mysqldatabase: redminehost: localhostusername: redminepassword: redmineencoding: utf8
注意:冒号后面有一空格。。。4、创建运行数据库:生成会话存储密钥:cd /data/www/redminerake generate_session_store
然后开始创建数据库表结构,在redmine的根目录下运行:RAILS_ENV=production rake db:migrate
读取默认配置数据,当遇到选择语言(Select language)时,选择zh:RAILS_ENV=production rake redmine:load_default_data
5、配置mongrel_clustercd /data/www/redminemongrel_rails cluster::configure -e production -p 8000 -a 127.0.0.1 -N 3
6、启用mongrel_clustercd /data/www/redminemongrel_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
启动成功如下:# mongrel_rails cluster::startstarting port 8000starting port 8001starting 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://mongrel;    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测试:    http://192.168.8.32http://img.phperz.com/data/img/20160130/1454133602_6290.png?201552910176直接用ruby内置webrick也可启动redmine/usr/local/ruby/bin/ruby /data/www/redmine/script/server webrick -e production &
启动成功如下:# /usr/local/ruby/bin/ruby /data/www/redmine/script/server webrick -e production & 3526# => Booting WEBrick=> Rails 2.3.11 application starting on http://0.0.0.0:3000=> Call with -d to detach=> Ctrl-C to shutdown server INFO WEBrick 1.3.1 INFO ruby 1.8.7 (2008-05-31) INFO WEBrick::HTTPServer#start: pid=3526 port=3000
访问redmine测试: http://192.168.8.32:3000
http://img.phperz.com/data/img/20160130/1454133602_4493.png?2015529101757六、配置SVN服务器
七、在redmine中配置svn
进入Redmine目录下Config,有文件“configuration.yml.example”,复制该文件重命名“configuration.yml”,修改其中的SVN配置
scm_subversion_command: svn
注意:这里需要在环境变量PATH中添加svn所在的目录
再重启服务器,配置SCM
新建项目test,配置版本库 SCM-->选择Subversion
URL-->填写svn://192.168.8.32/test(根据自己svn配置自行修改)
登录名-->test(根据自己svn配置自行修改)
密码-->test(根据自己svn配置自行修改)
保存即可
http://img.phperz.com/data/img/20160130/1454133602_5122.png?2015529101832
http://www.phperz.com/article/16/0203/186918.html
在Linux系统中将Redmine和SVN整合入Nginx的方法
页: [1]
查看完整版本: 在Linux系统中将Redmine和SVN整合入Nginx的方法