1、设置淘宝的gem镜像
1.1、不用镜像的痛苦
如果直接用官网的话,会有如下的错误信息,添加源、安装gem都是一样的错误,就算能连上也会很慢;
$ gem sources -a https://rubygems.org/
Error fetching https://rubygems.org/:
Errno::ECONNRESET: Connection reset by peer - SSL_connect (https://api.rubygems.org/specs.4.8.gz)
1.2、添加淘宝gem镜像地址
$ gem sources --add https://ruby.taobao.org/ --remove https://rubygems.org/
$ gem sources -l
*** CURRENT SOURCES ***
https://ruby.taobao.org
# 请确保只有 ruby.taobao.org
$ gem install rails
2、安装必要的库
neo@dev-All-Series: /workspace/neo
$ sudo apt-get install ruby2.1-dev libicu-dev
没有安装这些依赖关系时候遇到错误码如下:
ERROR: Failed to build gem native extension. /usr/bin/ruby2.1 extconf.rb mkmf.rb can’t find header files for ruby at /usr/lib/ruby/include/ruby.h
3、安装gollum
由于家里台式机是8核16G的,配置杠杠的跑起来飞快,几分钟就安装好啦;
neo@dev-All-Series: /workspace/neo
$ sudo gem install gollum -V
在这里添加-V主要是为了观察以下安装过程,也可以忽略之,更多的命令行参数的话,就直接gem --help查看吧;
4、享受本地wiki之旅
neo@dev-All-Series: /workspace/neo/gitlab/test.wiki
$ gollum
[2016-12-3 23:37:56] INFO WEBrick 1.3.1
[2016-12-3 23:37:56] INFO ruby 2.1.2 (2014-05-08) [x86_64-linux-gnu]
== Sinatra (v1.4.7) has taken the stage on 4567 for development with backup from WEBrick
[2016-12-3 23:37:56] INFO WEBrick::HTTPServer#start: pid=32446 port=4567
localhost - - [3/Dec/2016:23:38:22 CST] "GET / HTTP/1.1" 302 0
- -> /
localhost - - [3/Dec/2016:23:38:22 CST] "GET /Home HTTP/1.1" 302 0
- -> /Home
localhost - - [3/Dec/2016:23:38:22 CST] "GET /create/Home HTTP/1.1" 200 6600
- -> /create/Home
believe it or not, i'm now using gollum to finish this article; LOL
直接在浏览器中输入本地127.0.0.1:4567开启wiki之旅吧,实时预览起来挺不错的哦;如果你按照本教程刚刚安装好,那么就点击准备好的地址吧:http://127.0.0.1:4567;
5、功能展示
创建页面
预览页面
【重要事情说三遍】
不要在windows上折腾gollum!
不要在windows上折腾gollum!
不要在windows上折腾gollum!
亲身经历告诉我,在windows上折腾gollum要命还无法成功;以下简要说明以下痛苦经历:
1]、为了能安装gem,需要自己下载ruby的devkit,还好在rubyinstaller网站上有;
2]、gollum依赖于很多库,最难装的那个依赖于icu, 所以要去icu官网下载源码自己安装;
3]、先安装的那个鬼gem(名字很难记)编译icu经常出现找不到icu的库,需要手动设置 --with-icu-dir='/your/icu/installed/path/'
4]、安装好gollum后,启动时报上面那个鬼gem的.so 加载失败,为啥呢? 定位了很久,最后看通过手动irb中require该库,然后看mkmf.log日志中的编译方法,发现是找不到icu的库,因为编译代码用的-L. ,所以机制的我只能切换到安装icu的lib的目录下去执行gollum,居然就启动成功了,因为对ruby不熟悉,不知道怎么设置各种gem依赖的动态库的路径,反正设置环境变量LD_LIBRARY_PATH貌似没有效果;
5]、不要高兴地太早,就算启动了gollum,去浏览器中打开地址一看,傻眼了,居然ERROR 看命令行日志是,各种posix spawn在windows上失败,这个是硬伤啊!
windows伤不起,回来自己机器上Ubuntu环境下几分钟搞定的事情!