自己在网上看到redmine,感觉功能很强大。于是自己就开始安装,但是谁想到在安装过程中的坑呀,摔的自己遍体鳞伤,自己做一下总结,希望别人能绕过这些坑,走直路。
1. 安装环境: 系统:ubutu12.04 架构:LAMP 安全:防火墙和selinix(全部关闭)
2.安装流程: A. 安装ruby #官网下载 ruby-2.2以上的版本,否则安装过程中的组件会安装不上。(以2.2.4为例)
# tar zxvf ruby-2.2.4.tar.gz # cd ruby-2.2.4 # ./configure # make && make install 设置Ruby环境变vim ~/.profile
export PATH=$PATH:/usr/local/src/ruby-2.2.4/B.安装rubygems # tar zxvf rubygems-2.6.6.tgz
# cd rubygems-2.6.6 # ruby setup.rbC.安装依赖包:apt-get install libmysqlclient-dev apache2-threaded-dev
D.安装 redmine
官网下载 redmine-2.4.3.tar.gz
#tar zxf redmine-2.4.3.tar.gz #./configure #make &&make install # mv redmine-2.4.3 /usr/local/redmineE.gem 组件安装: 1. gem install bundler 安装过程需要更改源(否则安装很慢): gem sources --remove https://rubygems.org/ gem sources -a https://ruby.taobao.org/ 安装过程中可能会出现:报错-->Can't find Magick-config 查看提示日志内容发现 :find_executable: checking for Magick-config... -------------------- no 解决发法:sudo apt-get install libmagickwand-dev imagemagick 再次安装即可:gem install bundler
3.修改redmine源码包中:Gemfile文件,替换 https://rubygems.org 为 https://ruby.taobao.org(开头)
#bundle install --without development test postgresql sqlite rmagick ******************************安装完成后会生成Gemfile.lock.************************************************** 详解: Gemfile是指定需要使用的哪些gem及其版本的地方; Gemfile.lock文件是Bundler记录已经安装了的版本的地方。通过这样的方式,当相同库/项目在另外一台机器上部 署的时候,运行bundle install将会查看Gemfile.lock,然后安装同样的版本,而不是使用Gemfile以及安装最新的版本。(在不同的机器上运行不同版本会导致测试的失败……)你不需要直接地更改Gemfile.lock.********************************************************************************************************F.数据库方面的配置: 1.创建数据库,添加用户 #create database redmine character set utf8;
#create user 'redmine'@'localhost' identified by '123456'; #grant all privileges on redmine.* to 'redmine'@'localhost'; 2.数据库配置文件(/usr/local/redmine/config): 修改数据库配置文件 #cd config #cp database.yml.example database.yml #vim database.yml (修改database.yml文件如下:) #production: #adapter: mysql2 #database: redmine #host: localhost #username: redmine #password: 123456 #encoding: utf8 3.rake generate_secret_token #生成config/initializers/secret_token.rb文件,在redmine-2.4.3中,这个文件事先是不存在的,如果事先有,删除。 *******a)此处可能会出现说rake版本太低,gem install rake -v '版本号' ,然后再次bundle install(ralis版本低,也是如上方法解决) b)安装是可能会报rake aborted!rbpdf-font不能被加载,手动安装:gem install rbpdf-font ********************************************************* 4.数据库初始化(×****注意此时的目录一定要在redmine/config里×) #rake db:migrate RAILS_ENV="production" // 数据库初始化 *************在此处遇到的坑最多,我遇到过“addr没有定义过,有些版本过低,不支持的原因” 遇到过 rake aborted! ActiveRecord::AdapterNotSpecified: production' database is not configured. Available: ["production", "development", "test"] 解决方法:cd /usr/local/lib/ruby/gems/2.2.0/gems/htmlentities-4.3.1/lib/htmlentities/mappings/expanded.rb 将找到第466行,把它用井号“#”注释掉 5.rake redmine:load_default_data RAILS_ENV=”production" //加载默认配置 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里可以修改成其它语言。G.apache/nginx之间的联系(此处以apache为例): 1.修改文件权限:chmod -R 777 files log tmp public/plugin_assets (/usr/local/redmine)
2.添加apache/nginx模块: #gem install passenger #cd /usr/local/lib/ruby/gems/2.2.0/gems/passenger-5.0.30/bin
#passenger-install-apache2-module *************此处要分情况看apache中apxs2 : /usr/bin/apxs2和Executable: /usr/sbin/apache2 直接使用上面的命令,如果是源码安装:passenger-install-apache2-module --apxs2-path "/usr/local/apache/bin/apxs" 引号中的字符是源码安装apache位置。***************************************************************************H.apache配置文件内容: 1.模块加载(此内容在上一步安装之后会显示相关内容,将其复制到配置文件中即可)
LoadModule passenger_module /usr/local/lib/ruby/gems/2.2.0/gems/passenger-5.0.30/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c> PassengerRoot /usr/local/lib/ruby/gems/2.2.0/gems/passenger-5.0.30 PassengerDefaultRuby /usr/local/bin/ruby </IfModule><IfModule unixd_module>
2.apache网址设置
<VirtualHost *:80>
ServerName ip地址 # !!! Be sure to point DocumentRoot to 'public'! DocumentRoot "/usr/local/redmine/public" ErrorLog "/tmp/redmine_error_log" </VirtualHost>
I 重新启动apache,启动mysql ,http://ip 访问网站即可。
用户名:admin 密码:admin
截图一张(高兴一下):
以上就是安装流程,希望能够让大家少走弯路。