windwos下的Redmine安装调试(虚拟机中无法访问解决办法)
2016-09-06 15:40
696 查看
互联网搜索到的,基本上都是旧版本的, 1.2.1 的最多,我要新的啊,所以只好自己来啦。
本文主体参考 Redmine Wiki 的安装页面:http://www.redmine.org/projects/redmine/wiki/RedmineInstall ,遇到的问题自己解决了一下。总之不是翻译,而是实践记录。
环境描述
服务器操作系统为Windows Server 2008 R2 Enterprise,64位版本。Rails 3.2.19,ruby为1.9.3p545。
Redmine 为 2.5.2 版本。
MySQL 为5.5.40 win32 版本。
ImageMagick 为 ImageMagick-6.8.9-8-Q16-x86-dll 。
安装与配置
Redmine 是基于 Ruby on Rails 的,我选择最新版本 2.5.2 ,请到 redmine wiki 站点中的安装页面了解详情。截至我写博文时(2014年10月17日)最新版本为 2.5.2 。
依赖选择
我们先对 Redmine 依赖的环境和软件做下说明。能跑 Ruby 的操作系统就能跑 Redmine ,根据公司情况,我找了台 Server 2008 的计算机。
Redmine 对 Ruby 和 Rails 的依赖,如下图:
Redmine 2.5 版本需要 3.2 及以上版本的 Rails ,支持1.8.7 、 1.9.2 、 1.9.3 、2.0.0, 、 2.1 等版本的 Ruby 。后面我选择 RailsInstaller-2.2.4 来安装 Ruby 和 Rails ,它里面包含的 Rails 版本是 3.2.19 , Ruby 版本是 1.9.3p545 ,符合 Redmine 的要求。
Redmine支持 MySQL 作为数据库后端,需要 5.0 或更高的版本。我选择社区版 server ,版本号为 5.5.40 。
ImageMagick是可选依赖,用于将 Remine 中的项目数据如甘特图等导出为 png 图片。其它的可选依赖还有版本管理工具,比如 svn ,Redmine 可以与版本管理系统整合。如果你要支持 Open ID ,还需要 Ruby OpenID Library ,2 或者更高 版本。
好啦,现在开始秀安装过程。
RailsInstaller安装
图省事了,使用 RailsInstaller 来配置 Rails 和 Ruby ,它是一键安装,非常简单。网站在这里:RailsInstaller 。按下图所示,选择 Windows 下的安装包来下载:
本文写作时 RailsInstaller 的版本为 2.2.4 ,它带的 Ruby 和 Rails 是用 mingw32 编译出来的, MySQL 要匹配的,也得是 32 位。
安装过程就是一路狂点 Next 。首先是欢迎页:
二话不说,猛戳 Next 按钮,出现许可协议页面:
接受吧,然后再戳 Next 按钮,让你选安装位置还有附加的软件及设置,如下图:
需要的空间也不大,咱都选上吧。点击 Install 按钮,开始安装了。如下图:
等着吧,还能干么……
看到下图就 OK 啦:
点击 Finish 吧,亲。然后呢,你看到了 Ruby and Rails 的命令行环境:
到此为止, Ruby 和 Rails 安装就绪。
MySQL安装
MySQL的官网截图如下:你可以随便选择某个版本,大于 5 即可。我使用 5.5.40 x86 32bit MSI installer ,下载了 mysql-5.5.40-win32.msi 。下面是安装欢迎界面:
我是 Next 控,只会点 Next ,点吧点吧不是罪……看呢,协议页面:
惟有接受,才能享受猛戳 Next 的快乐。戳下,到安装类型页面:
我选了完整安装,也没多占多大空间。再戳 Next ,到准备就绪界面了:
用你无奈的手指,点 Install 吧,然后我们就只能看着进度条发呆了:
咋个回事儿,你造吗?居然出来了企业版的界面:
Cancel 和 Back 都被灰掉啦,有点儿跟团旅游被强制购物的感觉……没辙啦,带着气儿戳 Next 吧,看看它能变出啥子花样来。
再 Next 吧,耶,木有咧,回到进度条啦哈,原来只是个宣传,而已,没那么坏哈……
下面是安装完成界面:
MySQL 装完还要做一下配置。你看上图中那个复选框,默认是选中的。如果本机没有已经配置过的 MySQL ,由他去吧,点击你最爱的 Finish 按钮吧!
(要是安装过并且设置了 MySQL 的 root 账号密码,可能有问题,你别选这个 "Launch the MySQL Instance Configuration Wizard" 选项,跑到开始菜单或者安装目录下的 bin 目录,找到 MySQLInstanceConfig 点下好啦。向导会给你个机会修改 root 的密码的。)
我的计算机上原来被同事安装过 MySQL ,我以为删掉啦……结果呢,碉堡的事儿在后面,咱先按下不提吧,来看 MySQL 配置向导咧:
Next 党们,欢乐地戳吧。接下来就让你选配置类型啦:
我选了 Standard Configuration ,继续 Next ,抵达 Service 配置了:
如上图所示,我选择了安装 Windows 服务和开机启动,另外把 MySQL 的 bin 目录添加到了系统环境变量 PATH 中,这样随时随地就可以访问了。
戳 Next 吧,然后就该设置账号啦:
我选择了 Modify Security Settings ,不想埋地雷就没有创建匿名用户。欢快的戳了下 Next ,我到了准备就绪的页面:
能看到它,好开心!还等嘛,赶紧拥抱 Execute 吧。注意,开始执行你之前的配置喽:
我心里哼着小曲儿,就等着它往出蹦 Finish 界面呢,谁知道,受了惊吓!请看:
哇喔,安全设置失败!要么是因为防火墙设置导致连接不上 3306 端口,要么是之前有安装 MySQL ,卸载时没有清除数据目录,导致 root 的密码还在那里。
我是哪种呢……
我觉得可能是防火墙吧,因为同事说 MySQL 已经删除了。于是我把 mysqld 、 mysql 等等都加入到例外中,然后又到入站规则那里设置了 3306 端口的规则,费了半天劲,最后回来 Retry ,嘿嘿,又弹这个!
我只好叫来我的同事,询问之前的 MySQL 密码……然后呢, Skip 了。回到 bin 目录,找到 MySQLInstanceConfig 来运行,保持刚才那一路辛苦的配置,到了修改账号这里了,如下图:
看看,看看,有不同吧……
这个插曲告诉我们,前戏一定要充分,不然的话……
这次搞下来后,顺利看到了期待已久的 Finish 啊:
数据库配置 OK 啦,亲们!
ImageMagick安装
到这里去下载:选择 ImageMagick-6.8.9-8-Q16-x86-dll.exe 那个下载吧。然后运行它。
我决定先不装这玩意儿啦,先把 Redmine 跑起来看看,后面需要再配置。
Redmine安装与配置
Redmine 到这里下载:http://www.redmine.org/projects/redmine/wiki/Download 。记住是版本 2.5.2 哦。zip 包下载完毕后,解压到 C:\Sites 目录下面,这就安装完咧!
下面是配置,挠人的时刻就这么来了,不知道该是欢喜还是悲伤……
拷贝libmysql
为了 Redmine 可以正常连接 MySQL ,需要 MySQL 的 C API 库,即 libmysql.dll 。在这里:拷贝到 Ruby 的 bin 目录下,如图所示:
安装mysql2
Redmine 需要 mysql2(MySQL 针对 Ruby 的 C binding )据说可以提高性能,你可以在 Ruby and Rails 的命令行环境中执行下面的命令来安装:[html] view
plain copy
gem install mysql2
不过我这里出错了哎……
乖乖,缺少 thread.h ,检查了下, Ruby 中还真没这个头文件。网络一顿盲搜,时光飞逝啊。我怒了,尼玛,我要找个 thread.h ,我要换 Ruby 版本!
寻寻觅觅寻不到, thread.h 的踪迹……后来啊,我来到了这里:
啊哈,没错, rubyinstaller.org ,就是它了,我挑了 Ruby 2.0.0-p576 下载,找到 7z 包中的 ruby/thread.h 文件,拷贝到 C:\RailsInstaller\Ruby1.9.3\include\ruby-1.9.1\ruby 目录下面。
万事大吉了吗?
再次执行 gem install mysql2 ,又错啦……
霍霍,找不到 mysqlclient 这个库!根据错误信息,需要指定 mysql c connector 的位置。
使用 --with-mysql-dir 可以指定 mysql 的位置,然后 gem 安装依赖时就会使用指定位置下的 mysql 头文件和库文件。需要说明的是,路径中不能有空格,像 Program Files(x86) 这种路径会出错,所以我拷贝了 include 和 lib 文件夹,放在 c:\mysql_sdk 目录下。因此我执行下面的命令:
[html] view
plain copy
gem install mysql2 -- --with-mysql-dir="C:/mysql_sdk"
这次会通关吗?心中忐忑不已……人生的大起大落来得太快,小心肝承受不了呀……你看,事就这样成了:
建库
参考我的建库的图片,里面包含了命令,如下:基本步骤是酱紫的:从开始菜单执行 MySQL 5.5 Comand Line Client ,输入密码,登录成功,创建库 redmine ,创建用户 redmine ,授权其访问 redmine 库。
配置数据库连接
把 C:\Sites\redmine-2.5.2\config目录下的 database.yml.example 原地拷贝一份,名字改为 database.yml ,然后用文本编辑器打开它,数据库连接就在 database.yml 中配置。多幸福啊, Redmine 默认的配置就是针对 MySQL 的。你看:
如图所示,我们只需要修改 production这个配置即可。一般你只要修改 password 即可(其实你可以把 username 换成 redmine,密码对应)。比方我的配置:
[plain] view
plain copy
production:
adapter: mysql2
database: redmine
host: localhost
username: root
password: "zc_redmine"
encoding: utf8
安装依赖
首先要安装 bundler ,Redmine 使用它来维护 gems 依赖。命令:[html] view
plain copy
gem install bundler
然后要确认你在 C:\Sites\redmine-2.5.2 目录下面,不在的话,使用 cd 命令进去,然后执行下面的命令来解决 redmine 需要的依赖:
[html] view
plain copy
bundle install --without development test
这里又会尝试安装 mysql2 ,因为我们在 production 中指定使用 mysql2 作为数据库适配器。如果发现已经安装,就直接用本地的。你会看到 Using xxx 之类的信息,如下图:
安装过程是漫长的……希望能成功,可是!又夭折啦!看下图:
原来是 rmagick 啊,先跳过算咧,执行这个命令:
[html] view
plain copy
bundle install --without development test rmagick
我的心,在等待,永远在等待……Bingo!有图有真相:
终于可以继续前行啦,真是一把鼻滴一把泪的……
还是要啰嗦两句,如果你 bundle install 失败,可以根据失败提示,看是哪个 gem 有问题,然后单独执行安装操作来查问题在哪里……就这么循环,总能搞定的。人生需要正能量,一定会搞掂。
生成会话存储秘钥
因为我们的 redmine 版本是 2.x ,执行这个命令吧:[html] view
plain copy
rake generate_secret_token
上面的命令生成一个随机的 Key , Rails 用它来加密 cookie ……
这么简单一命令,也会错……看图吧:
版本问题啊,听人劝,这么干:
[html] view
plain copy
bundle exec rake generate_secret_token
这里的黎明静悄悄……执行这个命令,居然木有任何 output ,难道是成功了吗?且走着……
创建数据库结构
创建数据库结构,使用下面的命令:[html] view
plain copy
set RAILS_ENV=production
bundle exec rake db:migrate
注意是一条一条执行啊,后面不提醒啦……还有,因为我 rake 版本问题,只好每次调用 rake 时都在前面附加 bundle exec 喽。
它会创建一系列的表,设置表的权限,还会创建一个管理员账号,就是天上地下无人不知的 admin ,密码也是 admin 。
看到下面这个图,说明 OK 啦啦啦:
数据库默认数据设置
使用下面的命令来向数据库中插入默认的配置数据:[html] view
plain copy
set RAILS_ENV=production
bundle exec rake redmine:load_default_data
一条一条执行。
第二条执行时,会然我们设置语言。如图所示:
我选择了 zh ,然后回车。很快就 OK 啦:
又过了一关……我们还要走,因为,安踏,永不止步。
测试安装
不知不觉,居然到了这一步!这是要结束的节奏吗?废话少说,赶紧的,执行下面的命令:
[html] view
plain copy
ruby script/rails server webrick -e production
你是我的眼,带我领略这四季的变换……快告诉我,你是不是看见了这个图:
恭喜你, redmine 已成功启动!
从输出信息看到,它监听了 0.0.0.0:3000 ,所以你可以访问 http://localhost:3000 看看效果,也可以访问实际的 ip 地址,比如 http://192.168.1.30:3000 。效果如下图所示:
点击右上角的登录,可以看到下面的页面:
还记得我们的 admin 账号吗,输入进去,点击登录按钮,就进去了,随便点点,可能看到这个界面:
好啦,到此为止,你可以享受下管理员无上的权力带来的快感,你可以定义角色,定义工作流程,创建成员……哇哦,真的好厉害。不过,万里长征刚刚开始,环境才就绪,如何把项目管理过程在 Redmine 中体现出来,可是路漫漫其修远……
ROR rails正常启动,但是http://127.0.0.1:3000不能访问的解决办法
D:\aaa>rails s=> Booting WEBrick
=> Rails 3.2.16 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2014-10-14 16:14:26] INFO WEBrick 1.3.1
[2014-10-14 16:14:26] INFO ruby 1.9.3 (2013-11-22) [i386-mingw32]
[2014-10-14 16:14:26] INFO WEBrick::HTTPServer#start: pid=12800 port=3000
服务启动起来了,但是http://127.0.0.1:3000/不能访问。后台log里的消息是:
ArgumentError (A secret is required to generate an integrity hash for cookie session data. Use config.secret_token = "some secret phrase of at least 30 characters"in config/initializers/secret_token.rb):
解决办法:
rake generate_secret_token
或者
rake secret
原因是需要加密的字符串。
虚拟机上解决外部浏览器无法访问虚拟机里配置的rails环境问题:
使用 rails s -b192.168.xx.xx
-b后面是需要监控的ip,也就是服务器的ip地址,然后可以访问
因为如果按照 rails s 直接打开服务时候,监控的是 http://localhost:3000,或者是127.0.0.1
所以需要改一下监控ip,当然也可以改一下监控端口加上 -pxxxx 即可
相关文章推荐
- 无法启动调试 未安装silverlight developer 运行时 解决办法
- 启动调时错误"无法启动调试 没有正确安装调试器 请运行安装程序安装或修复调试器"的解决办法
- 无法启动调试 未安装silverlight developer 运行时 解决办法
- 虚拟机下安装linux出现光盘2无法挂载时的解决办法
- 安装XAMPP,phpmyadmin无法正常访问解决办法
- 同时安装Vmware Player与VirtualBox 虚拟机无法访问网络问题解决
- 更新Silverlight 后 无法启动调试 未安装Silverlight developer 运行时解决办法
- 转:WIN7上搭建Windows Phone 8 开发环境——VMware Workstation下Win8 “无法安装Hyper-V, 某个虚拟机监控程序正在运行”问题解决的办法
- Visual Studio 2012出现“无法访问T-SQL组件和安装了不兼容伯 DacFx版本”的解决办法
- WIN7上搭建Windows Phone 8 开发环境——VMware Workstation下Win8 “无法安装Hyper-V, 某个虚拟机监控程序正在运行”问题解决的办法
- 安装IIS后无法访问动态网页的解决办法
- 程序无法安装时, 提示无法访问网络位置0 的解决办法
- Hyper-V虚拟机安装及网卡无法找到,驱动无法安装解决办法
- visualbox nat方式联网时ssh无法访问虚拟机的解决办法
- 安装VMwareTools后虚拟机中的鼠标滚轮无法使用解决办法
- 更新silverlight 后 无法启动调试 未安装silverlight developer 运行时解决办法
- 本地环境 Ubuntu 下安装XAMPP,phpmyadmin无法正常访问解决办法 <转>
- openstack nova Folsom版中使用quantum,虚拟机无法访问外部网络的解决办法
- 无法启动调试 未安装silverlight developer 运行时 解决办法
- IIS部署asp.net报404错误 iis与Framework安装顺序造成无法访问网站的解决办法