标签归档:Gollum

Gollum Wiki Setup(LNMP)

gollum 是github的使用的一个基于markdown的 wiki系统的构造工具,简单实用。gollum直接和git集成不需要数据库,你可以选择在Web页面撰写文档,也可以用你喜欢的markdown工具编辑文档在命令行进行提交。下面是我在LNMP平台部署gollum的过程。

Server

安装ruby环境

apt-get install ruby1.9.1 ruby1.9.1-dev make zlib1g-dev libicu-dev build-essential git

安装gollum

gem install gollum

安装成功后尝试着在终端输入下面的命令,如果能够正常显示版本号则说明安装成功.我的版本为4.0.1

gollum --v
gollum 4.0.1

Github

在github上创建一个新项目,并开通Wikis。Git Clone Wikis到本地。

cd /srv/www/
git clone git@github.com:HenryZivers/gollum.wiki.git gollum
# 对应的Repo地址为git@github.com:HenryZivers/gollum.git

经过以上操作,在Wiki项目目录中运行gollum即可开启服务器。

cd /srv/www/gollum/
gollum

可以在浏览器中访问

http://<server_ip>:4567/

过程中可能出现两个问题:

Permission denied (publickey).
fatal: Could not read from remote repository.

原因:Github SSH Key免密没做

fatal: remote error: access denied or repository not exported

原因:需要先去Git上的Repo中随便创建一个Wiki页面。

让gollum在后台运行

nohup gollum&

编辑完成后,提交更改

cd /srv/www/gollum
git add .
git push origin master

不妨写一个脚本运行gollum

#!/bin/bash
gollum /srv/www/gollum

执行脚本

chmod +x gollum.sh
nohup ./gollum.sh&

Nginx

绑定域名需要使用Nginx做反向代理,配置参考

server {
        listen 80;
        server_name wiki.zivers.com;

        location / {
                auth_basic "Restricted";
                auth_basic_user_file   conf.d/htpasswd;                
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header Host $http_host;
                proxy_redirect off;
                proxy_pass http://localhost:4567;
        }

        error_page 500 502 503 504 /500.html;
        client_max_body_size 1M;
        keepalive_timeout 10;
}

在conf.d下生成登录密钥

cd /etc/nginx/conf.d
htpasswd -c htpasswd Henry

重启nginx

service nginx restart

Ref

http://www.jianshu.com/p/9c35812b9bae