How to Install Remark42 on Ubuntu Server

In this tutorial, we'll walk you through the process of installing Remark42 on Ubuntu Server, which is an open-source comment service designed to be fast, reliable, and easy to use.

Step 1: Installing Required Packages

Before we can proceed with the installation of Remark42, we need to install the required packages. Open a terminal window on your Ubuntu server and run the following command to update the package list.

sudo apt update

Once the update is complete, we can install the required packages by running the following command.

sudo apt install -y git make build-essential curl

Step 2: Downloading the Source Code

Next, we'll download the Remark42 source code from the official website using Git. Run the following command to clone the repository.

git clone https://github.com/umputun/remark42.git

This will download the source code to your current working directory.

Step 3: Configuring Remark42

Before we start the Remark42 server, we need to configure it to work with our website. Open the config.yaml file in the remark42 directory and update the following values.

server:
  listen: ":8080"
  rootURL: "<YOUR_WEBSITE_URL>"

oauth2:
  github:
    clientID: "<YOUR_GITHUB_CLIENT_ID>"
    clientSecret: "<YOUR_GITHUB_CLIENT_SECRET>"

Replace <YOUR_WEBSITE_URL> with your website URL and <YOUR_GITHUB_CLIENT_ID> and <YOUR_GITHUB_CLIENT_SECRET> with your GitHub OAuth client ID and secret.

Step 4: Starting the Remark42 Server

Now we can start the Remark42 server by running the following command.

make run

This will compile and start the server, which will be accessible at http://localhost:8080.

Step 5: Configuring Nginx

By default, Remark42 runs on http://localhost:8080. However, we want to make it accessible from the internet, so we'll use Nginx to proxy requests to Remark42. First, we need to install Nginx by running the following command.

sudo apt install -y nginx

Once Nginx is installed, we need to configure it to proxy requests to Remark42. Open a new configuration file for Remark42 in the /etc/nginx/sites-available/ directory using a command like sudo nano /etc/nginx/sites-available/remark42.

Add the following configuration code inside a server block:

server {
    listen 80;
    listen [::]:80;

    server_name <YOUR_WEBSITE_URL>;

    location / {
        proxy_pass http://localhost:8080;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

Replace <YOUR_WEBSITE_URL> with your website's URL.

You can now enable this site by creating a symbolic link from the /etc/nginx/sites-available/remark42 file to the /etc/nginx/sites-enabled/ directory using a command like sudo ln -s /etc/nginx/sites-available/remark42 /etc/nginx/sites-enabled/.

Now you can restart Nginx using the following command.

sudo systemctl restart nginx

Step 6: Testing the Installation

To test the installation, visit http://<YOUR_WEBSITE_URL> in your web browser. If everything is working correctly, you should see the Remark42 comment box on your website pages.

Congratulations, you have successfully installed and configured Remark42 on your Ubuntu server!

If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!

Alternatively, for the best virtual desktop, try Shells!