您的位置:首页 > 运维架构 > Docker

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

2018-02-28 12:12 1151 查看

Discourse安装配置指导手册

此文档用于指导如何在Ubuntu(版本号:16.04)下进行基于Docker的Discourse安装及基本配置

作者: Chris Mao(Zibing)

日期:28, Feb, 2018

Reference 参考引用

Docker安装指导

Discourse Docker

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安装成功。



小提示:

如果是在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[/code] 
2.重新编译Docker容器

cd /var/discourse
./launcher rebuild app


Discourse配置

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

User Localization

设置路径:admin/site_settings/category/basic

勾选参数“allow user locale”



Logo Icon

搜索“Assets for the site design”主题

以回贴方式将要使用的Logo文件上传到网站

获取图片上传后的URL地址

打开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”



Disable Anonymous

设置路径:admin/site_settings/category/login

勾选参数“login required”



Change Homepage

设置路径:admin/site_settings/category/basic

修改参数”top menu”中首页菜单项的顺序



Media iFrame

设置路径:admin/site_settings/category/security

在参数“allowed iframes”中添加视频来源的域,例:https://midea.xjtlu.edu.cn

Define Groups

设置路径:admin/groups/custom



Bulk User Invites

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

准备一个CSV文件,其格式要求如下:

1. 每个用户单独一行,栏位顺序为:邮件地址,用户组,主题编号

2. 请确保邮件地址的有效性

3. 如果需要为单一用户关联多个用户组,请使用英文模式下的分号(;)分隔,如group_1;group_2;group_3

4. 用户组和主题编号都为空时,邮件地址后不允许出现任何分隔符

文件样例:



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



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

Bulk Add to Group

设置路径:admin/groups/bulk



小提示:

此功能只对自定义组有效。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Discourse ubuntu