本次教程基于Debian12_x86系统
概要:
1.准备Debian12系统,安装Doker与Docker Compose;2.安装宝塔面板,选择docker与Nginx环境,安装好先关闭Nginx,再到防火墙开启8080、8443端口;3.进行Discourse官方安装指令,安装好进入app.yml注销其相关功能以免对宝塔面板起到冲突;4.添加反向代理,开启一键SSL证书。
1. 更新系统
首先,确保你的系统是最新的。
apt update && apt upgrade -y
2. 安装 Docker 和 Docker Compose
安装 Docker 的必要依赖包
apt install -y apt-transport-https ca-certificates curl software-properties-common
添加 Docker 的 GPG 密钥
curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
设置 Docker 的 stable 仓库
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
更新包列表并安装 Docker :
apt update
apt install -y docker-ce docker-ce-cli containerd.io
安装 Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/v2.39.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
安装宝塔面板(Debian12)
- 下载并安装宝塔面板
wget -O install_panel.sh https://download.bt.cn/install/install_panel.sh && bash install_panel.sh ed8484bec
- 一般服务器只需要一分钟,最后记录好宝塔提供的账户和密码
安装 Nginx与Docker 环境
在宝塔面板中安装 Nginx1.28与Docker 环境 :
如果后续安装其他程序例如Wordpress、DiscuzX3.5、帝国CMS可以安装PHP环境,Discourse不受影响。
安装 Discourse
- 创建目录并下载 Discourse Docker:(提示git报错,请用apt install git 安装)
sudo -s
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
chmod 700 containers
您将需要以 root 身份完成其余的设置和引导过程。
编辑 Discourse 配置
启动安装工具(启动前请关闭宝塔面板Nginx1.28,否则无法进行安装程序运行)
./discourse-setup
出现提示时回答以下问题:(邮箱建议用Gmail)
Hostname for your Discourse? [discourse.example.com]:
Email address for admin account(s)? [me@example.com,you@example.com]:
SMTP server address? [smtp.example.com]:
SMTP port? [587]:
SMTP user name? [user@example.com]:
SMTP password? [pa$word]:
Let's Encrypt account email? (ENTER to skip) [me@example.com]:
Optional Maxmind License key () [xxxxxxxxxxxxxxxx]:
使用宝塔面板编辑配置文件
- 通过宝塔面板登录并导航到文件管理器。
- 找到
app.yml文件,路径是/var/discourse/containers/app.yml - 编辑修改端口、SSL证书申请、更换Discourse版本
[端口更改]
expose:
- "8080:80" # http [修改这个前面的80 如8080:80]
- "8443:443" # https
[注销下面代码,注意空格与格式]
## Uncomment these two lines if you wish to add Lets Encrypt (https)
# - "templates/web.ssl.template.yml"
# - "templates/web.letsencrypt.ssl.template.yml"
[Discourse 切换稳定版]
version: "tests-passed" [最新测试版,可更换为 "stable" 稳定版]
打开宝塔面板
- 网站
- 反向代理
- 添加域名
- 配置反向代理
按照上图所示操作即可,部署好可以在反向代理中开启ssl。
开始访问 Discourse
现在你可以通过浏览器地址栏输入你的 https://suiyue.net/ 访问 Discourse![]()
注册新帐户并成为管理员
注册一个新的管理员帐户
(如果您无法注册您的管理员帐户,请检查日志/var/discourse/shared/standalone/log/rails/production.log 并查看我们的电子邮件故障排除清单。)
注册管理员帐户后,安装向导将启动并指导你完成 Discourse 的基本配置。
完成设置向导后,系统会弹出一个欢迎窗口,欢迎您访问新网站。它还会链接到管理指南,我们强烈建议您立即查看并经常参考。该指南提供了设置清单、关于如何成功启动社区的重要指导以及故障排除技巧。
要将Discourse 升级到最新版本 ,请https://discourse.example.com/admin/upgrade 在浏览器中访问并单击升级按钮。
或者,您可以 ssh 进入您的服务器并使用以下命令重建:
cd /var/discourse
./launcher rebuild app
关于Discourse备份与恢复
若你安装的是最新版的(dev)备份的数据建议用最新版(dev)恢复数据,同理稳定版数据备份用稳定版恢复。因为我再恢复数据时就出现过这种错误,希望能帮助到你。





