如何用Discourse搭建一个论坛

于 2014年03月21日 发布在 linux应用 跳到评论

Discourse是基于ruby on rails,Ember.js, PostgreSQL 和Redis的开源论坛,是由StackOverflow的联合创始人Jeff Atwood发起的,目的是成为下一代论坛,改变传统论坛的格局,成为论坛界的wordpress。

先说下我的使用感受吧,在try.discourse.org上可以体验的,首先是界面比较清爽,主体是白色的,很简洁。其次是摒弃了“板块”的概念,所有的帖子集中显示,用滚轮一直往下滑好了。然后是发帖和回复都十分方便,直接在当前页都可以完成,内容的编辑支持Markdown和BBCode,编辑的时候还可以在右侧直接预览,插入图片很方便,在网上看到一张图片之后可以右键复制图片,直接Ctrl+V就可以在编辑器内插入图片了,Discourse会自动完成复制并且上传到服务器上。

之前很早就用过Discuz!,但是这个论坛在国内用的实在是太普遍了,很多论坛的长的都是一个样子的。我感觉他最大的缺点是帖子中的每个回复都占用的很大的空间,在回复内容普遍很短的情况下,我每看一行回复都要滚动半个屏幕,这个最不能忍(哦对,还有坑爹的签名图片  = =)。Discourse做的比较合我胃口,一个回复的高度只有Discuz!的三分之一左右。

来说说安装吧,首先你要有个VPS或者云主机,可以使用阿里云,linode或者digitalocean等等,推荐内存是1G。

我安装的时候参照的是这篇文档 ,这个地方是以digital ocean为例来说明的,其他主机都大同小异。部署的时候需要用到docker,这个是个比较火的容器引擎,目前我还没有完全理解容器引擎到底指的是什么,“他可以打包引用和其依赖到linux上,实现虚拟化”,就当是个虚拟机好了恩。我选的是系统是Ubuntu 12.04.3 x64 LTS,按照文档上的教程升级了内核,我没有验证这一步是否是必要的,但是感觉虚拟化可能需要升级内核的东西,做了也无妨。

接下来是clone官方的docker镜像,修改配置文件app.yml,配置文件里面有几个需要注意的事情。ssh-key要设置,就是你从~/.ssh/id_rsa.pub拷贝到github上的那个东西,否则你没办法通过./launcher ssh app进入你的“虚拟机”。还有需要填写的是email地址和网站的host。邮箱相关的内容可能需要稍微折腾一点,我直接用的是mailgun的服务,maildraill貌似不让天朝的同学用,囧。。app.xml中邮箱配置的内容怎么填,mailgun里面都写的很清楚了,而且也说明了怎么在域名服务商那里添加邮件相关的记录。如果你嫌邮箱配置麻烦的话,就先略过吧。

最后执行./launcher bootstrap app和./launcher start app就可以让网站运行了。后续的折腾就是测试邮件是否配置成功,添加github,facebook,twitter的第三方登录功能了。如果你访问的时候出现了502错误,请检查你的内存是否只有512MB,内存小的话很容易出现这样的问题,出现这个问题的时候我一直搞不清楚哪里有问题,一直怀疑是配置错误,后来升级了内存之后就完全正常了。

还有一些缺点,由于网站很依赖javascript,SEO会比较差。其次中文本地化还不够完全,给官方提交什么的貌似比较麻烦。刚开始用,缺点应该还有很多没发现,不过看提交记录貌似挺频繁的,希望能越来越好。

我搭建了个论坛,域名是  http://android.hacking.today , 不过目前还不知道怎么搞。。当你搭建论坛的时候一定要想清楚到底该怎么搞,毕竟内容才是重点,用什么样的论坛不是最重要的。。

本文共有 4条评论 | 沙发:文章评论

  1. 鲜活说道:

    Discourse搭建论坛 真的没试过

  2. 我也想弄个discourse的论坛玩玩 哈哈

  3. small_fish__说道:

    我用的是阿里云的主机,使用docker部署比较失败;所以采用最基础的安装方式,有点小坑,主要有些步骤被墙了,至于邮件系统,最后买第三方的邮件服务吧. 我的小站,http://218.244.128.99/ ,域名还没来得及备案。

留下评论!

:wink: :twisted: :roll: :oops: :mrgreen: :lol: :idea: :evil: :cry: :arrow: :?: :-| :-x :-o :-P :-D :-? :) :( :!: 8-O 8)