在Ubuntu(16.04)下进行基于Docker的Discourse安装及基本配置

Discourse安装配置指导手册

此文档用于指导如何在Ubuntu(版本号:16.04)下进行基于Docker的Discourse安装及基本配置
作者: Chris Mao(Zibing)
日期:28, Feb, 2018

Reference 参考引用

Docker安装

1.安装依赖组件

sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

2.安装CA证书

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

3.添加Docker仓库

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

4.更新源列表

sudo apt-get update

5.安装Docker CE版

sudo apt-get install docker-ce

6.检查Docker版本,确认安装是否成功

docker --version

7.设置开机Docker自启功能

sudo systemctl enable docker

Discourse安装

1.创建安装目录

mkdir /var/discourse

2.下载源码到目录/var/discourse

git clone https://github.com/discourse/discourse_docker.git /var/discourse

3.执行安装命令

cd /var/discourse
./discourse-setup

小提示:
在安装过程中,如果出现Port 80 appears to already be in use的提示,则表示当前机器上的80端口被其他程序占用,多数情况下应该是被Apache占用,请使用以下方法修改Apache的监听端口。

# 停掉Apache服务
service apache2 stop
# 修改Apache的监听端口,将listen 80改为8080(或是其他端口号),保存后退出
vim /etc/apache2/ports.conf
# 重启Apache服务
service apache2 start

在安装过程中,需要回答以下问题,安装程序会根据您的输入在/var/discourse/containers目录中自动生成名为app.yml的配置文件。
- Hostname for your Discourse? [discourse.example.com]:
- Email address for admin account? [me@example.com]:
- SMTP server address? [smtp.example.com]:
- SMTP user name? [postmaster@discourse.example.com]:
- SMTP port [587]:
- SMTP password? []:

小提示:
如果在回答上述问题的过程发现某个问题回答错误了,想要修改怎么办呢?
不必着急,在您回答完所有问题之后,Discourse会让您确认输入是否正确,如果想要修改上述某个配置,可以输入”n”来重新录入配置参数。这里再插入一句,Discourse安装过程中的人机交互是很友好的,之前填写过的内容会作为下一轮回答的默认值,不必用户重复录入。

接下来就是一个相对漫长的等待过程…… 冲杯咖啡,远眺一下 ^_^


安装完成后,可以直接在浏览器中使用配置的域名或IP地址来访问Discourse。如果在浏览器中看到如下界面,表示Discourse安装成功。

Discourse Installed

小提示:
如果是在VMware中安装的Ubuntu系统,请确保虚拟机的网络适配器使用的是桥接模式,否则除宿主机以外的局域网内的电脑是无法访问到虚拟机的。

如果出现网页无法打开的情况,请检查Ubuntu的防火墙是否关闭。

小提示:
可以使用以下命令关闭防火墙。

sudo ufw disable

Setup Administrater Account

在Discourse成功安装之后,我们需要使用配置中的“DISCOURSE_DEVELOPER_EAILS”参数中的任意一个邮件注册帐号,并自动成为管理员。如果一直未能收到帐号激活邮件,请检查配置文件中关于SMTP部分的配置是否正确。另外也可以通过以下命令手工创建管理员帐号。

./launcher enter app
rake admin:create

Discourse Plugin安装

1.修改配置文件,添加插件仓库。
打开/var/discourse/container目录下的app.yml文件,找到##Plugins go here这一行,并在cmd之后添加欲安装的插件仓库地址。示例如下。

hooks:
after_code:
    - exec:
        cd: $home/plugins
        cmd:
            # Install voting Plugin
            git clone https://github.com/discourse/discourse-voting.git

2.重新编译Docker容器

cd /var/discourse
./launcher rebuild app

Discourse配置

在Discourse成功安装之后,我们可以根据实际的要求对其进行配置。以下配置无先后顺序。

User Localization

设置路径:admin/site_settings/category/basic
勾选参数“allow user locale”

user local

Logo Icon

  1. 搜索“Assets for the site design”主题
  2. 以回贴方式将要使用的Logo文件上传到网站
  3. 获取图片上传后的URL地址
  4. 打开admin/site_settings/category/required,把上一步获取到的图片URL粘贴到”logo url”参数中

同样的方式,还可以设置”logo small url”, ”digest logo url”, ”mobile logo url”, ”favicon url”, ”large icon url”, ”apple touch icon url”

logo_icon_setting

Disable Anonymous

设置路径:admin/site_settings/category/login
勾选参数“login required”

login required

Change Homepage

设置路径:admin/site_settings/category/basic
修改参数”top menu”中首页菜单项的顺序

top menu

Media iFrame

设置路径:admin/site_settings/category/security
在参数“allowed iframes”中添加视频来源的域,例:https://midea.xjtlu.edu.cn

Define Groups

设置路径:admin/groups/custom

group

Bulk User Invites

如果把Discourse设为一个相对私密的网站,不允许用户自行注册登录帐号,那么就需要管理员手工为其创建。这里介绍一种批量创建用户帐号的方法。

准备一个CSV文件,其格式要求如下:
1. 每个用户单独一行,栏位顺序为:邮件地址,用户组,主题编号
2. 请确保邮件地址的有效性
3. 如果需要为单一用户关联多个用户组,请使用英文模式下的分号(;)分隔,如group_1;group_2;group_3
4. 用户组和主题编号都为空时,邮件地址后不允许出现任何分隔符

文件样例:
Bulk_Invite_File

使用管理员帐号登录后,打开用户邀请页面(访问路径u/admin/invited/pending),上传用户清单文件即可完成用户邀请工作。每位用户都会收到一封邀请邮件,自行完成帐号创建的后续工作。

Bulk_Invite

更多信息,请参考官方论坛

Bulk Add to Group

设置路径:admin/groups/bulk

Bulk add groupd

小提示:
此功能只对自定义组有效。

相关推荐
<div style="color:rgba(0,0,0,.75);"> <span style="color:#4d4d4d;"> </span> <div style="color:rgba(0,0,0,.75);"> <span style="color:#4d4d4d;"> </span> <div style="color:rgba(0,0,0,.75);"> <div style="color:rgba(0,0,0,.75);"> <span style="color:#4d4d4d;">当前课程中商城项目的实战源码是我发布在 GitHub 上的开源项目 newbee-mall (新蜂商城),目前已有 6300 多个 star,</span><span style="color:#4d4d4d;">本课程是一个 Spring Boot 技术栈的实战类课程,课程共分为 3 大部分,前面两个部分为基础环境准备和相关概念介绍,第三个部分是 Spring Boot 商城项目功能的讲解,让大家实际操作并实践上手一个大型的线上商城项目,并学习到一定的开发经验以及其中的开发技巧。<br /> 商城项目所涉及的功能结构图整理如下:<br /> </span> </div> <div style="color:rgba(0,0,0,.75);">   </div> <div style="color:rgba(0,0,0,.75);"> <p style="color:#4d4d4d;"> <img alt="modules" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3N0b3JlL25ld2JlZS1tYWxsLXMucG5n?x-oss-process=image/format,png" /> </p> </div> <p style="color:rgba(0,0,0,.75);"> <strong><span style="color:#e53333;">课程特色</span></strong> </p> <p style="color:rgba(0,0,0,.75);">   </p> <div style="color:rgba(0,0,0,.75);">   </div> <div style="color:rgba(0,0,0,.75);"> <ul> <li> 对新手开发者十分友好,无需复杂的操作步骤,仅需 2 秒就可以启动这个完整的商城项目 </li> <li> 最终的实战项目是一个企业级别的 Spring Boot 大型项目,对于各个阶段的 Java 开发者都是极佳的选择 </li> <li> 实践项目页面美观且实用,交互效果完美 </li> <li> 教程详细开发教程详细完整、文档资源齐全 </li> <li> 代码+讲解+演示网站全方位保证,向 Hello World 教程说拜拜 </li> <li> 技术栈新颖且知识点丰富,学习后可以提升大家对于知识的理解和掌握,可以进一步提升你的市场竞争力 </li> </ul> </div> <p style="color:rgba(0,0,0,.75);">   </p> <p style="color:rgba(0,0,0,.75);"> <span style="color:#e53333;">课程预览</span> </p> <p style="color:rgba(0,0,0,.75);">   </p> <div style="color:rgba(0,0,0,.75);">   </div> <div style="color:rgba(0,0,0,.75);"> <p style="color:#4d4d4d;"> 以下为商城项目的页面和功能展示,分别为: </p> </div> <div style="color:rgba(0,0,0,.75);"> <ul> <li> 商城首页 1<br /> <img alt="" src="https://img-bss.csdnimg.cn/202103050347585499.gif" /> </li> <li> 商城首页 2<br /> <img alt="" src="https://img-bss.csdn.net/202005181054413605.png" /> </li> <li>   </li> <li> 购物车<br /> <img alt="cart" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3Byb2R1Y3QvY2FydC5wbmc?x-oss-process=image/format,png" /> </li> <li> 订单结算<br /> <img alt="settle" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3Byb2R1Y3Qvc2V0dGxlLnBuZw?x-oss-process=image/format,png" /> </li> <li> 订单列表<br /> <img alt="orders" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3Byb2R1Y3Qvb3JkZXJzLnBuZw?x-oss-process=image/format,png" /> </li> <li> 支付页面<br /> <img alt="" src="https://img-bss.csdn.net/201909280301493716.jpg" /> </li> <li> 后台管理系统登录页<br /> <img alt="login" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3Byb2R1Y3QvbWFuYWdlLWxvZ2luLnBuZw?x-oss-process=image/format,png" /> </li> <li> 商品管理<br /> <img alt="goods" src="https://imgconvert.csdnimg.cn/aHR0cHM6Ly9uZXdiZWUtbWFsbC5vc3MtY24tYmVpamluZy5hbGl5dW5jcy5jb20vcG9zdGVyL3Byb2R1Y3QvbWFuYWdlLWdvb2RzLnBuZw?x-oss-process=image/format,png" /> </li> <li> 商品编辑<br /> <img alt="" src="https://img-bss.csdnimg.cn/202103050348242799.png" /> </li> </ul> </div> </div> </div> </div>
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页