Install Discourse on Plesk(Ubuntu 18.04 LTS)

Hello Guys,

i have followed the Install Tutorial for Plesk Onyx (Ubuntu 14.04), but i had many problems.

Now i have everything working on my Plesk and i decided to make a new Tutorial(Mail with the Plesk Mail Server)

1. Set options in Plesk

2. Install Docker

  • Go to Extensions.
    docker_1

  • Search for Docker and install the extension. Now you have Docker as menu point in the side menu.
    docker_2

3. Install Discourse

Now you need an ssh access to your server who is Plesk hosted.
My example data:
Domain: forum.domain.tld
E-Mail: mail@domain.tld
E-Mail: password123

  • Download the git.

    sudo -s
    git clone https://github.com/discourse/discourse_docker.git /var/discourse
    cd /var/discourse

  • Now we must edit the setup script.

    nano discourse-setup

  • Scroll down to this:
    setup_before

  • And change it to this:

  • Exit with STRG+X and type Y then press enter to save the file.

  • Launch the setup.

    ./discourse-setup

  • Now answer some questions.

    Hostname for your Discourse? [discourse.example.com]: forum.domain.tld
    Email address for admin account(s)? [me@example.com,you@example.com]: mail@domain.tld
    SMTP server address? [smtp.example.com]: Plesk (Yeah write Plesk in the line)
    SMTP port? [587]: 25 (The Port from the Mailserver in Plesk is 25)
    SMTP user name? [user@example.com]: mail@domain.tld
    SMTP password? [pa$$word]: password123
    Let's Encrypt account email? (ENTER to skip) [me@example.com]: (to skip this press enter)

  • It takes a while, wait until you get back to the command line. The Docker container fails to start. It doesn’t matter. Now we change the app.yml to work with Plesk.

    nano containers/app.yml

  • Change the Ports and comment two lines. Before:

  • After:

  • Exit with STRG+X and type Y then press enter to save the file.

  • It’s time to rebuild the container.

    ./launcher rebuild app

  1. Change the hosts File in the docker emulation.
  • Now we change the hosts file, so discourse can use the Plesk Mail Server. Enter the Docker container.

    ./launcher enter app

  • Wait until the command line comes back. Now we install nano.

    apt-get install nano

  • Let us change the hosts file.

    nano /etc/hosts

  • add the last line:
    hosts
  • Exit with STRG+X and type Y then press enter to save the file
  • Exit the container

    exit

  1. Change the Plesk Proxy settings

I hope i can help somebody.

Greetings from germany

PS: Thanks to Google Translator :smiley:

12 个赞

@Vault1337 Ich bekomme es nicht zum laufen wäre super wenn du mir helfen konntest danke.

Hi!

Still getting:
“WARNING:: This server does not appear to be accessible at discourse.domain.com:443

Even if I changed checked ports in discourse-setup, and opened 8060 and 9443 in the firewall.

The subdomain discourse.agoraludica.eu is accessible from the internet.

Is there something like an IP to whitelist?

I now use Plesk Obsidian on Ubuntu 20 and the only setting I need to tweak to allow Discourse to work along other web applications is to add a proxy rule that redirects the port 80 to another (8060 in my case) - and of course, the redirections as well of the port 8060 → 80 and 9443 → 443 in app.yml.
Also, the SSL certificate is automatically renewed without any additional action.
It’s way simpler than before.

2 个赞

You’ll need to edit app.yml yourself and

./launcher rebuild app

Discourse-setup works only for a standard installation.

1 个赞

Those lines tell discourse to ignore your proxy servers address and report the address of the actual computer making the request.

The let’s encrypt issue, is because you need not to pass that request to discourse but to the let’s encrypt client that the reverse proxy is running. You could probably add some stuff to tell it to handle that /well-known request itself. Perhaps you’re friends W can help figure that out

1 个赞

Hi,

Solved this issue restarting the docker service on host, to force a rebuilding of the nerwork bridge.

1 个赞

Hi,

Unfortunately I’m not receiving the email to activate.
When I use all email settings on Outlook it’s functional but when I use the same settings I don’t receive anything.

I did exactly what you wrote but there aren’t even mail data in logs.

Anyone else has this issue?

Ubuntu 20.X 和 Plesk 18.X 有更新吗?我无法在旧的指南中完成。

也许我更新后的回复能帮到你:

4 个赞

您能帮我安装一下吗?我就是无法让它正常工作。

很有可能 VPS 提供商的 Plesk 或 OS 配置与我的配置不同,需要进行不同的配置才能让 Discourse 正常工作。
我可以在论坛上帮助你,但不能通过其他方式,而且我也没有空闲时间工作。但是请注意,我不是 Discourse 专家,也不是 Linux 专家,更不是 Plesk 专家。

如果你想在论坛上获得更多帮助,你需要提供更多信息:

  1. Discourse 是否已安装?

  2. 你是否应用了第一个主题中描述的任何内容?因为这些信息很可能已经过时。正如我所说,我几乎不需要做什么就能让 Discourse 正常工作。

  3. 当你打开 URL 时,论坛返回了什么错误消息?如果论坛是公开的,你能分享 URL 吗?

  4. 你能告诉我 Plesk 中你的域名的 Nginx/Docker 代理信息吗?

  5. 你的 Discourse 容器正在运行吗?

请提供任何你认为有用的额外信息。

1 个赞

我的意思是,通过 Discord 或其他方式提供帮助。

抱歉,我不知道你在说什么。

1 个赞

我理解你遇到了困难,就像我第一次安装 Discourse(而且还是在 Plesk 上——一个不支持的安装)时一样。

再说一次,我很乐意在这里帮助你,因为最终的信息也能帮助其他人,但是,为了他人(和你自己)着想,你需要提供更多关于你实际做了什么、什么不起作用、是否有任何错误信息等信息……请查看我之前的信息。

如果你无法遵循这些简单的指导方针,这里没有人能够也无意愿帮助你。

花点时间写回复,并尽可能精确。

3 个赞

4 篇帖子已拆分为新主题:在子文件夹中安装 Discourse 时 HTTPS 不起作用