Create Your Own Forum with Alibaba ECS! :D

Continuing from How to use Alibaba Cloud Services for FREE?! (SOLVED):

Following the steps from the link above, :point_up::point_up_2: here’s how to create your own forum and have fun building and growing a curated community of your own!

In this tutorial, I will show you how to deploy your own forum using Alibaba Cloud Services specifically Elastic Compute Service (ECS). If you’ve always wanted to grow your own following, find your clique on the world wide web, looking to have philosophical (or bubblegum-esque, I don’t judge :nerd_face:) discussions, or just want a Reddit/4chan clone, right here’s your chance with an easy-to-follow newbie friendly guide!

Let’s get started!

Part 1 of 3 (Deploy ECS and Add Security Rules)

  1. Deploy an ECS instance as per the link right at the top. Here it is again: How to use Alibaba Cloud Services for FREE?! (SOLVED)
    If you run into any trouble, here is another quickstart guide to help you out: https://www.alibabacloud.com/help/doc-detail/25424.htm

  2. Remember to register your free .tech domain on Alibaba Cloud Services! It’s pretty straightforward and if you still find yourself stuck, do check the link at the top again and find the little right arrow icon or text that says "BONUS TIP INSIDE: CLICK ME FOR FREE DOMAIN"

  3. Go to your Console, select Elastic Compute Service and click on Elastic Compute Service below My Resources. Under the IP address column, copy your instance’s public IP address which says (Internet) in brackets and not the (Private) one. We will need this later. The Status column should also show running which verifies that your ECS is all good, up and running! :+1:

  4. Still on the same page, on the right most column under Actions, click More and look for Network and Security group and click Configure Security Group. We have to add rules to configure our new instance to allow all IP addresses to access our public forum. Unless you’d like to make it very private and allow only specific IP addresses to access your instance/forum… :man_shrugging: Everyone else, hop-on board to #5!

  5. Click Add Rules on the right and then click Quick Rule Creation blue button on the top right corner of your screen. In Common Port (TCP), select SSH 22, HTTP 80, and HTTPS 443. In the Authorization Objects field, use this value which allows all IP addresses: 0.0.0.0/0
    Check that the Rule Direction is Ingress and hit OK. Now, repeat this step again but the second time round, change the Rule Direction to Egress aka Outbound.

Having issues with Security Group Rule?

Note: If you are still having issues later on, you can click the other blue button on the top right corner next to Quick Rule Creation which is Add Security Group Rule. Check that Rule Direction is Ingress and for Protocol Type select All, and use the same value for Authorization Objects which is “0.0.0.0/0”. Now do the same thing, but this time change Rule Direction to Egress. I don’t think this is recommended practice so please proceed with caution and at your own risk! :grimacing:


Part 2 of 3 (Setting up Domain)

  1. Go back to your main console and look for Alibaba Cloud DNS. If you can’t find it, click Products on the left sidebar or use this link: https://dns.console.aliyun.com/#/dns/domainList

  2. You should be able to see your domain. On the right, click Configure and when the page finishes reloading click the blue button top right that says Add Record

  3. A modal should pop-up and check the following fields where Type should be A - IPV4 address, Host can be anything you want (I used: “forum”), ISP Line is default, Value should be the public IP address you saved earlier in Part 1 Step 3 wayyyyy above, right up there! :point_up::point_up_2: Leave the rest as-is and click OK!

Part 3 of 3 (Connect to your ECS Instance and Install Forum)

  1. There are many ways to connect to your instance. For example, via command prompt / terminal with password or SSH key-pair or via Alibaba’s Management Terminal. Here’s a really good resource if you can’t decide which route to take or how exactly to do it: https://www.alibabacloud.com/help/doc-detail/25433.htm

  2. Once you have successfully connected, take a quick detour and open up a new tab in your browser to register an account with an email service provider like SendGrid or ElasticEmail. These do not require credit card verification at time of writing and will help you get started quicker and easier! Keep that tab open, you’ll need them API keys and whatnot soon enough! :wink:

  3. Whilst still connected to your instance, install Docker/Git. In the command line type wget -qO- https://get.docker.com/ | sh and hit Enter.
    In case you get any permission errors, add the word ‘sudo’ in front of any commands like so… sudo wget -qO- https://get.docker.com/ | sh

  4. We will use an open-source forum called Discourse which imo the best forum rn! :dancer:
    Type sudo -s
    then hit Enter, then…
    mkdir /var/discourse
    then hit Enter, then…
    git clone https://github.com/discourse/discourse_docker.git /var/discourse
    then hit Enter, then…
    cd /var/discourse

  5. Launch the setup tool by typing the following then hit Enter.
    ./discourse-setup

  6. You will be prompted the following. My own example is below but you’d have to replace it with the values you used in Part 1 and 2 of this tutorial:
    Hostname for your Discourse?: forum.nuer.tech
    Email address for admin account(s)?: alan@gmail.com
    SMTP server address?: smtp.elasticemail.com
    SMTP port?: 2525
    SMTP user name?: alan@gmail.com
    SMTP password?: long123-string456-of-789numbers888-uuid000
    Let's Encrypt account email?: alan@gmail.com

Hit Enter and enjoy your new forum!
Well done, champ. You made it! :champagne:

In-Depth Forum Installation Guide

PS: Here are complete guides for Discourse!