如何在CentOS 8上使用Docker安装Discourse论坛

如何在CentOS 8上使用Docker安装Discourse论坛

Discourse是为互联网的下一个十年构建的免费开源平台。这是最新的论坛软件,可用作邮件列表,讨论论坛,长聊天室等。它使用Ruby on Rails作为后端,使用Ember.js作为前端,使用PostgreSQL作为数据存储,并使用Redis作为缓存服务器。简单,高效,移动友好,可自定义,使在线讨论变得轻松有趣。

本教程显示如何使用Docker在CentOS 8服务器上安装Discourse论坛。

先决条件

  • 运行CentOS的服务器8。
  • 指向服务器IP的有效域名。
  • 根密码是在服务器上设置的。

安装Docker

首先,您需要在服务器上安装Docker。默认情况下,CentOS 8标准存储库中不提供Docker。因此,您需要将正式的Docker存储库添加到您的系统。您可以使用以下命令添加它。

dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo

创建存储库后,运行以下命令以安装Docker。

dnf install docker-ce --nobest

安装Docker之后,启动Docker服务,以便可以使用以下命令在系统重启时启动它:

systemctl start dockersystemctl enable docker

您现在可以使用以下命令检查Docker版本:

docker --version

您应该看到以下输出:

Docker version 20.10.1, build 831ebea

安装话语

首先,使用以下命令创建Discourse目录:

mkdir /opt/discourse

然后使用以下命令从Git存储库下载最新版本的Discourse:

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

然后将目录更改为Discourse并使用以下命令安装Discourse:

cd /opt/discourse./discourse-setup

系统将提示您输入FQDN,如下所示。

which: no docker.io in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
which: no docker.io in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
Ports 80 and 443 are free for use
'samples/standalone.yml' -> 'containers/app.yml'
Found 4GB of memory and 2 physical CPU cores
setting db_shared_buffers = 1024MB
setting UNICORN_WORKERS = 4
containers/app.yml memory parameters updated.

Hostname for your Discourse? [discourse.example.com]: discourse.linuxbuz.com

输入有效的域名,然后按Enter。系统将提示您输入有效的电子邮件地址和密码。

Checking your domain name . . .
Connection to discourse.linuxbuz.com succeeded.
Email address for admin account(s)? [[email protected],[email protected]]: [email protected]
SMTP server address? [smtp.example.com]: smtp.gmail.com
SMTP port? [587]: 
SMTP user name? [[email protected]]: [email protected]
SMTP password? [pa$$word]: yourpassword
Optional email address for Let's Encrypt warnings? (ENTER to skip) [[email protected]]: [email protected]

Does this look right?

输入所有详细信息,然后按Enter。您应该检查所有设置,如下所示。

Hostname      : discourse.linuxbuz.com
Email         : [email protected]
SMTP address  : smtp.gmail.com
SMTP port     : 587
SMTP username : [email protected]
SMTP password : yourpassword
Let's Encrypt : [email protected]

ENTER to continue, 'n' to try again, Ctrl+C to exit: 

如果一切正常,请按Enter键开始安装。安装完成后,您将看到以下输出:

+ /usr/bin/docker run --shm-size=512m -d --restart=always -e LANG=en_US.UTF-8 -e RAILS_ENV=production -e UNICORN_WORKERS=4 -e UNICORN_SIDEKIQS=1 -e RUBY_GLOBAL_METHOD_CACHE_SIZE=131072 -e RUBY_GC_HEAP_GROWTH_MAX_SLOTS=40000 -e RUBY_GC_HEAP_INIT_SLOTS=400000 -e RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR=1.5 -e DISCOURSE_DB_SOCKET=/var/run/postgresql -e DISCOURSE_DB_HOST= -e DISCOURSE_DB_PORT= -e LETSENCRYPT_DIR=/shared/letsencrypt -e DISCOURSE_HOSTNAME=discourse.linuxbuz.com -e [email protected] -e DISCOURSE_SMTP_ADDRESS=smtp.gmail.com -e DISCOURSE_SMTP_PORT=587 -e [email protected] -e DISCOURSE_SMTP_PASSWORD=yourpassword -e [email protected] -h centos8-app -e DOCKER_HOST_IP=172.17.0.1 --name app -t -p 80:80 -p 443:443 -v /var/discourse/shared/standalone:/shared -v /var/discourse/shared/standalone/log/var-log:/var/log --mac-address 02:e0:37:60:d3:09 local_discourse/app /sbin/boot
ab3bdf3c169d47d9ff06052f48ff078d46393f1152b651b9fd3354594cc38714

现在,您可以使用以下命令查看Discourse执行容器:

docker ps

您应该看到以下输出:

CONTAINER ID   IMAGE                 COMMAND        CREATED          STATUS          PORTS                                      NAMES
ab3bdf3c169d   local_discourse/app   "/sbin/boot"   22 seconds ago   Up 21 seconds   0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   app

访问Discourse Web UI

然后打开网络浏览器并输入URL https://discourse.linuxbuz.com..您将被重定向到话语设置屏幕。

请点击 注册 按钮。显示注册页面。

注册管理员帐户

输入您的电子邮件地址,用户名和密码, 注册 按钮。您将收到一封电子邮件,以激活您的帐户。

确认邮件

结论

恭喜!现在,Discourse论坛软件已成功安装在CentOS 8上。现在,您可以在Discourse中探索其他功能,并将其部署在生产环境中。如有任何疑问,请随时与我们联系。

Sidebar