Ubuntu上使用Discourse免费搭建论坛

最近打算给开源项目 jqweui 做一个官方论坛,发现目前使用最多的应该是 discourse.

什么是dicourse

Discourse 是一个开源论坛,官方宣称是面向互联网的下一个十年的产品,包括vuejs, reactjs在内的很多开源项目都使用这个作为他们的官方论坛。

要想使用 Discourse 有两种方式:

  • 一种方式是自己在服务器上部署,discourse提供了一个docker镜像可以很方便部署
  • 另一种方式是直接使用discourse官方提供的收费服务,可以帮你托管。

因为官方最低收费是 $100/month,有点贵,所以这里我们采用第一种方式。

SMTP 申请

discourse本身的安装非常简单,因为他是基于Docker发布的,所以数据库什么的都已经配好了,不用像以前安装WP一样还需要自己安装MySQL。
唯一需要注意的是,一定要先申请一个可用的SMTP服务,再进行安装,因为在安装的时候需要填几个SMTP的配置,如果没有申请好肯定没法填写。

我用了MailGun提供的SMTP服务,他可以提供 10000封/月 的免费服务,discourse只用邮件进行激活和重置密码,对大多数小网站来说足够用了。

第一步,先打开 https://www.mailgun.com/ 官网,然后注册一个自己的账号,注册的时候必须要填信用卡信息,我有Visa的卡可以直接用,放心填写,因为免费的套餐足够了,不会被扣费的。

第二步,注册并激活账号后,点击 Domains,然后在页面列表中点一下当前 domain 的链接,就会进入到 Domain Info 的配置界面,这里就是我们待会需要在 Discourse 安装的时候填写的SMTP服务的配置。

我的配置是这样的:

mailgun

上图中用红色字标出了对应的配置名字。

安装

Discourse 安装过程有比较详细的官方教程:https://github.com/discourse/discourse/blob/master/docs/INSTALL-cloud.md

这里是以 digital-ocean 作为例子的。目前这个安装脚本只支持 unbuntu 14+,我的server 由于时间较早,是12年的版本,所以需要升级一下。

具体安装过程其实非常简单,只需要执行一个脚本即可:

1
2
3
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
./discourse-setup

在安装脚本启动的时候会问你几个问题,其中SMTP的配置就是上一步我们申请的,直接按上一步截图上的备注填写就好。

安装完成后,设置DNS解析到你的IP上,DNS解析如何设置已经有很多教程这里就不详细解释了。DNS生效后,直接打开你的网址,能看到一个 Admin 的设置界面,填好你的邮箱后会通过 mailgun 服务给你发送一封邮件,激活之后就能以管理员身份登录了。

打开这个链接来体验一下吧 jQuery WeUI Forum.