Redhat EN 6.0下安装项目管理软件redmine

 

一、安装ruby
下载ruby-1.8.7
http://www.ruby-lang.org/zh_cn/downloads
(wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p330.tar.gz)
      #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
source /etc/profile 直接生效
二、安装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.7
(wget http://rubyforge.org/frs/download.php/60718/rubygems-1.3.7.tgz)
#tar zxvf rubygems-1.3.7
#cd rubygems-1.3.7
#ruby setup.rb
#gem -v                                                                    //查看版本
注意:安装完rubygems后注意修改更新站点(前提要能上网),否则有的包可能无法正常安装。
        #gem source -r http://gems.rubyforge.org       删除以前的更新站点
        #gem source -a http://rubygems.org                添加现在的更新站点
三、安装rails
#gem install rails -v=2.5.2
 
四、安装i18n
#gem install i18n -v=0.4.2

五、安装ruby-mysql
#gem install ruby-mysql

补充 mysql的安装:
创建mysql用户名,用户组
# groupadd mysql
# usradd -g mysql mysql
下载mysql源码 http://download.mysql.cn/download_file/gz/5.0/mysql-5.0.22.tar.gz
#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/
注:如果mysql装好了的,直接创建数据库就可以了,查看好socket的目录和端口,以便于后面的设置成功。

六、安装redmine

下载redmine-1.3.1.tar.gz
#tar zxvf redmine-1.3.1.tar.gz
#cp redmine-1.3.1 /usr/local/redmine
#cd /usr/local/redmine/redmine-1.3.1/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.报错1:
 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;
e.报错2:
 Access denied for user 'root'@'localhost' (using password: YES)
      解决办法:
 service mysqld stop
/usr/local/mysql/bin/mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
        # mysql -u root mysql
        mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
        mysql> FLUSH PRIVILEGES;
        mysql>quit
service mysqld restart
mysql -uroot –p
Enter password:
mysql>
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.3.1/script/server webrick -e production
更换web服务器
redmine自带的webrick太慢,特别是局域网,据说是需要解析目标地址的主机名,直接给ip不用,硬要绕一圈。
使用网上推荐的 mongrel
安装mingrel
# gem install mongrel
# ruby /usr/local/redmine/redmine-1.0/script/server mongrel -e production

但这样启动有一个问题,关了启动窗口后就会关闭,很不方便,在后面加一个参数-d,

ruby /usr/local/redmine/redmine-1.0/script/server mongrel -e production -d
本机ip为192.168.11.106,至此在本机使用http://192.168.11.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 ,把ruby /usr/local/redmine/redmine-1.0/script/server mongrel -e production -d
这句生成一个sh文件,然后加入到自动启动里去就可以了。

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服务,在配

置中设置好发送邮件的帐号,然后测试.
七:测试
打开网站:http://192.168.11.106:3000  管理用户和密码都是:admin


 

你可能感兴趣的:(linux,操作系统,linux,常见问题,redhat,项目管理,mysql,rubygems,数据库,authentication)