上周在公司内部搭建好gitlab。不少同事此前用的是svn,我对git可能最为熟悉,老板建议说给大家做个培训,于是整理了一些好的资料。至于解决大家遇到的问题,我倒是更倾向于使用在线问答的形式,所以顺带在公司内部搭建了一个论坛服务,方便大家贴出问题,交流讨论,大多问题一贴代码都解决了。而且方便后来者参考,不必每个问题大家都问一遍。

文本的可重用性比口头强多了。

#discourse Discourse是一个为下一个十年的互联网准备的论坛程序。

使用体验极佳。

允许直接贴代码,对于技术交流十分方便

#install docker discourse 像上一篇安装gitlab一样,我依然偏好使用docker

docker的安装就不赘述了

1
2
3
4
mkdir /var/discourse
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
cp samples/standalone.yml containers/app.yml

编辑配置文件containers/app.yml

初始化:./launcher bootstrap app

SMTP邮件服务器部分折腾了挺久,其实一般的qq邮箱就行,需要注意的是使用admin账号将notification email设置为smtp user email一致

需要注意的是 port使用默认的587,使用465不会生效

也可以直接在containers/app.yml里改: - exec: rails r "SiteSetting.notification_email='xxx@qq.com'"

改了containers/app.yml之后,需要./launcher rebuild app

1
2
3
4
#创建管理员
cd /var/discourse
sudo ./launcher enter app
rake admin:create

之后打开url : /admin/site_settings/category/required ,设置其中的notification email,使其与smtp user email一致。

一些可能用得到的操作

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
cd /var/discourse
#初始化
./launcher bootstrap app
#rebuild
./launcher rebuild app
#启动
./launcher start app
#停止
./launcher stop app
#更多操作课参考 ./launcher

FQA

如何使discourse与其他网站共用nginx

参考Running other websites on the same machine as Discourse

#参考