安装redmine

环境: windows10,mysql5.7.10

1、安装Ruby
http://rubyinstaller.org/downloads/下载可安装的exe文件:Ruby 2.3.1 (x64),下载后,直接安装到C:盘下:C:\Ruby23-x64
查看ruby和gem版本:
ruby -v
gem -v
自带的gem版本是2.5的吧。

2、安装DevKit
不安装这个,Rails安装不成功。
还是从http://rubyinstaller.org/downloads/下载DevKit-mingw64-64-4.7.2-20130224-1432-sfx.exe,解压到一个目录中,在该目录下,依次执行如下命令:
ruby dk.rb init #生成config.yml
ruby dk.rb install
ruby dk.rb review #检查要添加DevKit支持的Ruby列表是否有误

3、换gem的源,因为国外的源不好用,连不上。
gem sources --remove https://rubygems.org/
gem sources -a http://gems.ruby-china.org/ # 这儿用https不成功,可能是证书什么的没有配置好
gem sources -l # 查看源,只有国内这一个

换了源后,可以升级一下gem,升级后变成2.6.7了:
gem update --system

4、安装 Rails
gem install rails
很顺利就安装完了

5、下载redmine
从官网下载redmine-3.3.1.zip,解压到一个目录下,这个目录就是redmine以后运行使用的目录。

6、建立数据库
在mysql中创建数据库

CREATE DATABASE redmine CHARACTER SET utf8;
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'my_password';
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';

然后配置数据库:
拷贝config/database.yml.example为config/database.yml,然后修改里面production一节的配置:

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: my_password

这儿的localhost,按其官网安装说明,改为127.0.0.1,说是因为mysql2不支持IPV6的地址。

7、安装redmine
安装前,先把gem源换了。修改redmine目录下的Gemfile,把第一行注释掉,加上一行,注意不要掉了前后两个单引号:
source ‘http://gems.ruby-china.org/

按官网安装说明要先安装bundler,这个版本的ruby也好像也已经有了。没有就gem install bundler安装 一下。
然后在redmine的目录下执行:
bundle install --without development test rmagick
如果提示依赖rbpdf-font没有,导致安装中断,就执行一下 gem install rbpdf-font,然后再执行上面的命令。

8、生成会话保存密钥
bundle exec rake generate_secret_token
在这一步碰到几个问题:
1)提示C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/htmlentities-4.3.1/lib/htmlentities/mappings/expanded.rb:465: warning: key “inodot” is duplicated and overwritten on line 466
这个可能没有影响。不过,打开这个expanded.rb文件,看第465和466两行确实重复,注释掉其中一行即可。
2)提示:rake aborted!
LoadError: cannot load such file – rbpdf-font
可能是因为我前面的安装redmine时,实际上是因为没有rbpdf-font导致安装中断,但是我没有注意,以为是成功了,所以这一步才出现这个提示。我执行了
gem install rbpdf-font,然后删除当前目录下的Gemfile.lock,又执行了一遍bundle install --without development test rmagick,看到安装成功。
然后再执行这个:bundle exec rake generate_secret_token,就没有报什么错误。

9、创建数据库
set RAILS_ENV=production
bundle exec rake db:migrate
10、本地化数据加载
set RAILS_ENV=production
set REDMINE_LANG=zh
bundle exec rake redmine:load_default_data
这儿碰到SQL执行错误的问题:
Error: Mysql2::Error: You can’t specify target table ‘enumerations’ for update in FROM clause: UPDATE enumerations SET position = coalesce((
select position
from (select id, position from enumerations) as parent
where parent_id = parent.id), 1) WHERE `enumerations`.`type` IN (‘IssuePriority’) AND (`enumerations`.`parent_id` IS NOT NULL) ORDER BY `enumerations`.`position` ASC
Default configuration data was not loaded.
查来查去,说是mysql不支持这种嵌套。但是上面的sql写法也是网上解决这种问题的一种方法。最后查到是mysql有一个bug,在5.7.11中纠正了。于是升级mysql到最新版本5.7.16。再执行就没有错误了。

11、启动服务,测试
bundle exec rails server webrick -e production
用admin/admin登录。

整个过程大概费了半天时间,就rbpdf-font和sql错误这两个问题费了好些时间。rbpdf-font这个问题应该是在安装过程中没有仔细查看返回信息导致。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值