linux下redmine安装笔记

linux下redmine安装笔记

redmine安装相对trac要简单一点。

一、安装ruby

下载ruby-1.8.7

http://www.ruby-lang.org/en/downloads

      #tar xzvf ruby-1.8.7.tar.gz

      #cd ruby-1.8.7
      #./configure --prefix=/usr/local/ruby
      #make && make install
设置环境变量     vim /etc/profile
export PATH=/usr/local/ruby/bin:$PATH
二、安装rubygems
如果系统中已经存在rubygems,可以通过如下方法卸载:
#ruby -e 'puts $:'                                                       //查找rubygems安装目录
#cd /usr/local/ruby/lib/ruby/site_ruby/1.8/
#rm -rf ubygems.rb rubygems rubygems.rb 
#which gem gem1.8                                                   //查找gem包的安装目录
#rm -rf /usr/local/ruby/bin/gem
下载rubygems-1.3.5
#tar zxvf rubygems-1.3.5
#cd rubygems-1.3.5
#ruby setup.rb
#gem -v                                                                    //查看版本
注意:开始时把rubygems更新到最新版本1.6.2了,最后用rake创建表时失败,郁闷。
       安装完rubygems后注意修改更新站点,否则有的包可能无法正常安装。
        #gem source -r http://gems.rubyforge.org       删除以前的更新站点
         #gem source -a http://rubygems.org                添加现在的更新站点
三、安装rails
#gem install rails -v=2.3.5
        Fetching: rake-0.8.7.gem (100%)
Fetching: activesupport-2.3.5.gem (100%)
Fetching: activerecord-2.3.5.gem (100%)
Fetching: rack-1.0.1.gem (100%)
Fetching: actionpack-2.3.5.gem(100%)
Fetching: actionmailer-2.3.5.gem(100%)
Fetching: activeresource-2.3.5.gem(100%)
Successfully installed rake-0.8.7
Successfully installed activesupport-2.3.5
Successfully installed activerecord-2.3.5
Successfully installed rack-1.0.1
Successfully installed actionpack-2.3.5
Successfully installed actionmailer-2.3.5
Successfully installed activeresource-2.3.5
Successfully installed rails-2.3.5
8 gems installed
Installing ri documentation for rake-0.8.7 ...
Installing ri documentation for activesupport-2.3.5 ...
Installing ri documentation for activerecord-2.3.5 ...
Installing ri documentation for rack-1.0.1 ...
Installing ri documentation for actionpack-2.3.5 ...
Installing ri documentation for actionmailer-2.3.5 ...
Installing ri documentation for activeresource-2.3.5 ...
Installing ri documentation for rails-2.3.5 ...
Installing RDoc documentation for rake-0.8.7 ...
Installing RDoc documentation for activesupport-2.3.5 ...
Installing RDoc documentation for activerecord-2.3.5 ...
Installing RDoc documentation for rack-1.0.1 ...
Installing RDoc documentation for actionpack-2.3.5 ...
Installing RDoc documentation for actionmailer-2.3.5 ...
Installing RDoc documentation for activeresource-2.3.5 ...
Installing RDoc documentation for rails-2.3.5 ...
四、安装i18n
#gem install i18n -v=0.4.2
Fetching:i18n-0.4.2.gem (100%)
Successfully installed i18n-0.4.2
1 gem installed
Installing ri documentation for i18n-0.4.2...
Installing RDoc documentation for i18n-0.4.2...
五、安装ruby-mysql
#gem install ruby-mysql
Successfully installed ruby-mysql-2.9.4
1 gem installed
Installing ri documentation for ruby-mysql-2.9.4...
Installing RDoc documentation for ruby-mysql-2.9.4...
补充 mysql的安装:
创建mysql用户名,用户组
# groupadd mysql
# usradd -g mysql mysql
下载mysql源码 http://www.mysql.com/downloads/mysql
#cd mysql-5.0.22
#./configure --prefix=/usr/local/mysql
--datadir=/mydata //数据库存放目录
--with-charset=utf8 //使用UTF8格式
--with-extra-charsets=complex //安装所有的扩展字符集
--enable-thread-safe-client //启用客户端安全线程
--with-big-tables //启用大表
--with-ssl //使用SSL加密
--with-embedded-server //编译成embedded MySQL library ( libmysqld.a )
--enable-local-infile //允许从本地导入数据
--enable-assembler //汇编x86的普通操作符,可以提高性能
--with-plugins=innobase //数据库插件
--with-plugins=partition //分表功能,将一个大表分割成多个小表
#make && make install
初始化mysql数据库
#chown -R mysql:mysql /usr/local/mysql
#cp mysql-5.0.22/support-files/my-medium.cnf /etc/my.cnf
#cd /usr/local/mysql
#bin/mysql_install_db --user=mysql
#chown -R mysql:mysql /usr/local/mysql/var/ //把初始化的数据库目录给MySQL所有者
#/usr/local/mysql/bin/mysqld_safe --user=mysql & //启动MySQL
配置开机自动启动
#cp mysql-5.0.22/support-files/mysql.server /etc/init.d/mysqld
#chmod 755 /etc/init.d/mysqld
#chkconfig --add mysqld
#chkconfig mysqld on
#service mysqld restart
补充 mysql的配置:
配置my.cnf
配置主要把安装的目录的那几项打开就行.
改动如下:

[client]
#password = your_password
port = 3306
socket = /tmp/mysql3306.sock

# The Mysql server
[Mysqld]
port = 3306
socket = /tmp/mysql3306.sock

打开下面几项
innodb_data_home_dir = /usr/local/mysql/var/
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /usr/local/mysql/var/
innodb_log_arch_dir = /usr/local/mysql/var/

六、安装redmine

注意redmine的版本

Redmine version Supported Ruby versions Required Rails version Required Rack version
current trunk ruby 1.8.6, 1.8.7 Rails 2.3.11 Rack 1.1.0
trunk from r2887  tor4903 ruby 1.8.6, 1.8.7 Rails 2.3.5 Rack 1.0.1
trunk from r2493  tor2886 ruby 1.8.6, 1.8.7 Rails 2.2.2  
trunk before r2493 ruby 1.8.6, 1.8.7 Rails 2.1.2  
1.1.x ruby 1.8.6, 1.8.7 Rails 2.3.5 Rack 1.0.1
1.0.x ruby 1.8.6, 1.8.7 Rails 2.3.5 Rack 1.0.1
0.9.x ruby 1.8.6, 1.8.7 Rails 2.3.5 Rack 1.0.1
0.8.x ruby 1.8.6, 1.8.7 Rails 2.1.2

下载redmine-1.1.0

#mkdir /usr/local/redmine

#cd /usr/local/redmine

#svn co http://redmine.rubyforge.org/svn/branches/1.0-stable redmine-1.0

#cd /usr/local/redmine/redmine-1.0/config

#cp database.yml.example database.yml

#vim database.yml  //数据库配置文件

production:  
adapter: mysql  
database:redmine  
host: localhost  
username: root          //数据库访问用户名
password: "123456"    //数据库访问密码
encoding: utf8
 使用rake创建表
# rake db:migrate RAILS_ENV="production" 
    a.报错:uninitialized constant ActiveSupport::Dependencies::Mutex 
解决方法:rails和rubygems版本不匹配,rubygems降到1.3.5试试
    b.报错:A key is required to write a cookie containing the session data. Use config.action_controller.session = {:key=>"_myapp_session", :secret=> "some secret phrase" } in config/environment.rb
        解决方法:rake config/initializers/session_store.rb
    c.报错: No such file or directory - /tmp/mysql.sock
       解决方法: 由于之前在mysql配置时my.cnf配置了socket导致
vim config/database.yml
在production栏目最后一行添加 socket: /tmp/mysql3306.sock  
注意: socket的“:"后面必须有个空格,再接"/tmp/mysql3306.sock"
    d.报错:
      !!! The bundled mysql.rb driver has been removed from Rails 2.2. Please install the mysql gem and try again: gem install mysql.
      rake aborted!
       需要安装mysql适配器。gem install mysql
    e.报错:
Access denied for user 'mysql'@'localhost' (using password: YES)
      解决办法:
        #mysql
        Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.0.22-log
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> 
        mysql>grant all privileges on *.* to 'mysql'@'localhost' identified by 'mysql' with grant option; 
        mysql>flush privileges;
        mysql>exit;
    f.报错:Unknown database 'redmine'
       解决办法:创建数据库redmine
       mysql>create database redmine;
         
加载默认配置
# rake redmine:load_default_data RAILS_ENV="production"
这里会要求选择默认语言,选中文zh:
Select language: bg, ca, cs, da, de, en, es, fi, fr, he, hu, it, ja, ko, lt, nl, no, pl, pt, pt-br, ro, ru, sk, sr, sv, th, tr, uk, vn, zh, zh-tw [en] zh
这个默认设置只是在未登录时的界面语言,当用户登录后,默认语言还是英语,在My account里可以修改成其它语言。

启动WEB服务
# ruby script/server webrick -e production
或# ruby /usr/local/redmine/redmine-1.0/script/server webrick -e production
更换web服务器
redmine自带的webrick太慢,特别是局域网,据说是 需要解析目标地址的主机名,直接给ip不用,硬要绕一圈。
使用网上推荐的 mongrel
# gem install mongrel
# ruby /usr/local/redmine/redmine-1.0/script/server mongrel -e production
本机ip为192.9.100.106,至此在本机使用http://192.9.100.106:3000 或 http://127.0.0.1:3000均能访问,但局域网其他机器仍然无法访问。
原因:redhat防火墙屏蔽了端口3000
解决办法: 配置防火墙,开放宽口3000               

    # /sbin/iptables -I INPUT -p tcp --dport 3000 -j ACCEPT

    # /etc/rc.d/init.d/iptables save

    # service iptables restart
至此,redmine安装完成。后面需要完成redmine、apache、subversion的整合。
以上安装在虚拟机上完成,PC 192.9.100.105上始终安装不上,一样的步骤,在gem install时老提示:
        ERROR: http://gems.rubyforge.org/ does not appear to be a respository
        ERROR: While executing gem ... (Gem::RemoteFetcher::FetchError)
                  bad response Not Found 404 (http://gems.rubyforge.org/yaml)

Redmine邮件的配置

修改Redmine下文件夹config中的email.yml,信息如下:

production:
  delivery_method: :smtp
  smtp_settings:
  address: mail.XXXXX
  port: 25
  domain: XXXXX.com
  # authentication: :login
  # user_name: [email protected]
  # password: XXXXXX
  
development:
  delivery_method: :smtp
  smtp_settings:
  address: mail.XXXXX
  port: 25
  domain: XXXXX.com
  # authentication: :login
  # user_name: [email protected]
  # password: XXXXXX

注意用#注销掉的那三行信息,那是邮件服务器身份验证信息,但是如果你的用户已经使用了域验证,就不需要那三行信息,像我自己用的就是内部的邮件服务器(MS Exchange),就无须身份验证的必要。如果使用的是外面邮件服务器,一般是需要的;参数设置好了,然后重启Redmine服务,在配置中设置好发送邮件的帐号,然后测试(测试功能在右下角,我觉得自己眼神实在差,居然没有发现那个功能,还抱怨Redmine怎么那么笨的,没有提供邮件测试的功能,每次测试都在实际操作中进行,比较更新问题等,哈哈,傻了)。

你可能感兴趣的:(linux下redmine安装笔记)