redmine
背景:部门想用个工具来做项目执行进度的管理,为了保证数据私有并且不想花钱,选了redmine。
环境:阿里云服务器,windows server R2企业版
软件版本构成:
官方版本说明http://www.redmine.org/projects/redmine/wiki/RedmineInstall#Ruby-interpreter
redmine4.0写的是upcoming,让我望而却步,最终选择了3.4.6。ruby环境选了个中间版本,2.2.0,采用railsInstallers来安装,主要是看论坛说,这个工具集成度高,部署简单。
redmine 3.4.6;railsinstaller 3.2.1;ImageMagick 6.9.9(这个可能会用到,后面说明);postgres 10.0
部署过程:
1、安装railsInstaller
这个就一路Next就好了,很好安装,git组件不想装可以不装。值得注意的一点是,安装时勾选添加ruby等组件执行文件到环境变量,比较省事,自己手动更改可以。
2、文件部署
将redmine 3.4.6解压到railsInstaller安装后生成的sites文件夹中,重命名为redmine(为了好写)。然后就可以进行redmine的环境配置了。
3、配置
(1)打开cmd命令行,进入redmine文件夹。
(2)执行
gem install rails -v=4.2
这个版本号是根据官网的说明来的。
(3)执行
gem install rack
这个我没有指定版本号,自动下载的是2.0.5的。
(3)执行
gem install -v=0.4.2 i18n
这个不知道是装的什么,看帖子写的,因为这个不指定版本号不会执行。
(4)安装数据库,支持三种postgres、mysql、sqlserver,我最终使用的postgres,服务器上已有的,服务器上也有mysql,不过遇到坑了,下面详说。
(5)创建remine库体
CREATE ROLE redmine LOGIN ENCRYPTED PASSword 'my_password' NOINHERIT valid UNTIL 'infinity';
CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine;
注意,我这里使用的postgres,其他库体的语句参见官方说明。当然,使用对应的可视化工具也可以,就是创建一个名为redmine的登陆角色,尽量给足权限,尽量不密码过期(怕麻烦)。新建一个为名redmine的空库,所有权给刚才的角色。
(6)配置数据库连接文件。redmine/config/database.yml.example这个文件是redmine的数据连接样例配置,拷贝一下,重命名为database.yml,修改其中的信息并保存。
production:
adapter: postgresql
database: redmine
host: localhost
username: redmine
password: "my_password"
encoding: utf8
不同库体的区别主要是适配器名称不一样。
(7)回到命令行,执行
gem install bundler
安装bundler。bundler是用来管理gem中的依赖文件的,之后会用到。
(8)安装依赖文件。执行
bundle install --without development test
会下载很多相关的依赖文件。这时候提示rmagick异常,是因为没有安装ImageMagick,运行一下执行程序,再重新执行。
(9)执行
bundle exec rake generate_secret_token
生成随机token。这里吐槽一下,一开始,我是用的是mysql库,然后适配器使用的mysql2,通过命令下载的mysql2版本为0.4.10,但是运行上述命令时,提示加载libmysql失败。于是搜索了下问题,按帖子提示,执行gem install mysql2,结果下载了一个0.5.2的版本,但是上述命令执行时,还是去找的0.4.10。之后试了几种方法,将0.5.2中的libmysql替换到0.4.10中(也试了从mysql官网上下的和已安装数据库中的对应驱动),无果。替换成其他版本的驱动时,提示版本不匹配,也尝试了本地安装,也没成功。折腾一番后,放弃,换了postgres。
(10)执行
set RAILS_ENV=production
bundle exec rake db:migrate
初始化数据库。
(11)执行
set RAILS_ENV=production
set REDMINE_LANG=zh
bundle exec rake redmine:load_default_data
加载默认数据。这里环境语言我设置的zh,根据需要设置。
4、之后启动redmine服务,执行
bundle exec rails server webrick -e production
默认监听地址为localhost,默认端口为3000。由于我需要外网访问,本身阿里云服务器有对应的内外网ip,所有我将服务地址绑定到其对应的私有ip上
bundle exec rails server webrick -e production -b xxx.xxx.xxx.xxx
5、之后就是访问测试喽,访问http://localhost:3000。登陆时会发现界面是英文的,在个人账户中,设置语言就可以了。
官方配置说明 http://www.redmine.org/projects/redmine/wiki/RedmineInstall#Ruby-interpreter
参考贴 http://www.cnblogs.com/afarmer/archive/2011/08/06/2129126.html
文章最后发布于: 2018-09-14 16:18:42