Install Discourse on OVH VPS

(Geert Claes) #1

Does anyone have any experience on installing Discourse of the cheapest OVH VPS? I managed to all installation steps from the guide at discourse/ at master · discourse/discourse · GitHub up until after the Install Discourse. Then I am a bit lost. The Mail configuration step in the guide is a vague. Any help to get it running would be much appreciated.

(Felix Freiberger) #2

This should work fine :slight_smile:

Where are you stuck, exactly? Which mail provider do you want to use?

(Geert Claes) #3

Not sure which one to use. I have just created a free dev account (we just want to test first - as cheaply as possible - if Discourse is what we need) with I updated some DNS records and have verified for a TXT record for DKIM-signing and CNAME record. How and what do I do this SPF thing?

(Felix Freiberger) #4

I’m not sure whether SparkPost had you set SPF up already, but if not, you can do that later. For now, just proceed to the ./discourse-setup step – you’ll be asked to provide credentials for SparkPost there :slight_smile:

(Geert Claes) #5

When run ./discourse-setup I get the following message:

Port 80 appears to already be in use.

If you are trying to run Discourse simultaneously with another web
server like Apache or nginx, you will need to bind to a different port


If you are reconfiguring an already-configured Discourse, use

./launcher stop app

to stop Discourse before you reconfigure it and try again.

Note that I am no expert in Discourse, VPS or OVH, so be kind :slight_smile:

(Felix Freiberger) #6

Is that a fresh VM at OVH, or did you already anything up on it? Did you intentionally install Apache or nginx on it?

(Stefano Costa) #7

I’ve been using OVH with the cheapest SSD option for two years and it worked very well. Recently I needed to upgrade to the 4 GB offer (but it’s still cheaper than Digital Ocean and works well for my use case)

(ljpp) #8

OVH should be Discourse compatible, if you start from scratch and follow the installation procedure to the letter. If you have played around with your server instance, then destroy it and launch a new one.

If you have zero experience in transactional email services, then is the easiest and most straight forward to setup. If you are only doing private small scale testing, I guess you could just use a Gmail account as well.

(Geert Claes) #9

That was a fresh Ubuntu and followed the install steps, installed git, docker …

(Geert Claes) #10

Great, any tips for a newbie?

(Geert Claes) #11

Ok, maybe I’ll start again and get a MailGun account if it’s easier

(Felix Freiberger) #12

Okay! Maybe they preinstall Apache or nginx – let’s get rid of them:

sudo apt-get remove apache2 nginx

Then, try again. If this doesn’t help, run this and post the output so we can see what’s blocking the port:

sudo ss -lptn 'sport = :80'

No need to restart for now, this is not related to your mail provider :slight_smile:

(Geert Claes) #13

Found some time to give it another go and the uninstall scripts seemed to have worked. I also created a MailGun account and used those details. I did get another error though:

You have less than 5GB of free space on the disk where /var/lib/docker is located. You will need more space to continue
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       9.7G  5.6G  4.1G  58% /

(Felix Freiberger) #14

Well – as the error says, you’re out of disk space. You can try running /var/discourse/launcher cleanup to free some space, but most likely, this won’t help and you just need a bigger disk :frowning:

(Geert Claes) #15

The clearing worked … at first but it ends up again with the same error, so it does look like the smallest OVH with 10GB is not enough.

Configuration file at containers/app.yml updated successfully!

WARNING: We are about to start downloading the Discourse base image
This process may take anywhere between a few minutes to an hour, depending on your network speed

Please be patient

Unable to find image 'discourse/base:2.0.20170728' locally
2.0.20170728: Pulling from discourse/base
62ede6aff2e8: Pulling fs layer
fc19d60a83f1: Pulling fs layer
de413bb911fd: Pulling fs layer
2879a7ad3144: Pulling fs layer
668604fde02e: Pulling fs layer
75ea1d577cf2: Pulling fs layer
2879a7ad3144: Waiting
668604fde02e: Waiting
75ea1d577cf2: Waiting
fc19d60a83f1: Verifying Checksum
fc19d60a83f1: Download complete
de413bb911fd: Verifying Checksum
de413bb911fd: Download complete
2879a7ad3144: Verifying Checksum
2879a7ad3144: Download complete
668604fde02e: Verifying Checksum
668604fde02e: Download complete
62ede6aff2e8: Verifying Checksum
62ede6aff2e8: Download complete
62ede6aff2e8: Pull complete
fc19d60a83f1: Pull complete
de413bb911fd: Pull complete
2879a7ad3144: Pull complete
668604fde02e: Pull complete
75ea1d577cf2: Verifying Checksum
75ea1d577cf2: Download complete
75ea1d577cf2: Pull complete
Digest: sha256:24da785f6176a417ac2d282f33340ab7017c26627647c341e4de82e7a86ab464
Status: Downloaded newer image for discourse/base:2.0.20170728
You have less than 5GB of free space on the disk where /var/lib/docker is located. You will need more space to continue
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       9.7G  5.5G  4.2G  57% /

Would you like to attempt to recover space by cleaning docker images and containers in the system?(y/N)

(Geert Claes) #16

Ok, upgraded to the next level at OVH and now the setup completed!

Final question is now probably a really silly one again, but what changes do I need to make to my DNS records to point my chosen discourse hostname to the OVH server location?

(Felix Freiberger) #17

On the hostname you want to use, there should be an A record pointing to your server’s IPv4 address, and optionally an AAAA record containing the IPv6 address :slight_smile:

(Geert Claes) #18

Excellent! Thanks very much for your support!!!

(DjCyry) #19

Do you use SSD or Cloud Vps on ovh ?
Did you try to set your dns with cloudflare ?
I ask because i want to test ovh vps’s . Thanks

(Geert Claes) #20

VPS (second cheapest option because the cheapest one disk space is insufficient)

What did you mean with DNS with CloudFlare?