Atlantic.Net Blog

How to Install Talkyard Forum with Nginx on Ubuntu 18.04

Hitesh Jethva
by Atlantic.Net (198posts) under Tutorials, VPS Hosting
0 Comments

Talkyard is a free and open-source community discussion platform that helps you to share knowledge with your co-workers, customers, volunteers, users. It is an alternative to other discussion platforms including StackOverflow, Slack, Discourse, and Reddit. You can use it as a knowledge base, customer support, discussion forum, and much more.

In this post, we will show you how to install Talkyard Forum with Nginx on Ubuntu 18.04.

Prerequisites

  • A fresh Ubuntu 18.04 server on the Atlantic.Net Cloud Platform
  • A valid domain name pointed with your virtual private server
  • A root password configured on your server

Step 1 – Create Atlantic.Net Cloud Server

First, log in to your Atlantic.Net Cloud Server. Create a new server, choosing Ubuntu 18.04 as the operating system with at least 2GB RAM. Connect to your Cloud Server via SSH and log in using the credentials highlighted at the top of the page.

Once you are logged in to your Ubuntu 18.04 server, run the following command to update your base system with the latest available packages.

apt-get update -y

Step 2 – Install Required Dependencies

First, you will need to install some required dependencies to your server. You can install all of them with the following command:

apt-get install git curl gnupg2 unzip -y

Once all the dependencies are installed, you can proceed to the next step.

Step 3 – Download Talkyard

First, you will need to download the Talkyard from the Git Hub repository. You can download it with the following command:

git clone -b w-km2  --single-branch https://github.com/debiki/talkyard-prod-one.git talkyard

Once the download is completed, change the directory to talkyard and install the required packages with the following command:

cd talkyard
./scripts/prepare-ubuntu.sh

Step 4 – Install Docker and Docker Compose

Next, you will need to install the Docker and Docker compose to your system. You can install them by running the following script:

./scripts/install-docker-compose.sh

Once both are installed, edit the play-framework.conf file and change some required values:

nano conf/play-framework.conf

Change the following lines:

talkyard.becomeOwnerEmailAddress="[email protected]"
talkyard.hostname="talkyard.example.com"
play.http.secret.key="your-secure-key"

Save and close the file, then edit the .env file and define your database password:

nano .env

Change the following line:

POSTGRES_PASSWORD=your-database-password

Save and close the file when you are finished.

Step 5 – Copy Docker Compose File

Next, you will need to copy a desired Docker Compose file depending on how much RAM your server has. If your server has 2GB RAM, copy the following file:

cp mem/2g.yml docker-compose.override.yml

If your server has 4GB RAM, copy the following file:

cp mem/4g.yml docker-compose.override.yml

Step 6 – Install Talkyard

Now, you will need to install the Talkyard with all the required app. You can start the installation by running the following script:

./scripts/upgrade-if-needed.sh

You should get the following output:

2021-03-13T07:23:03+00:00 upgrade-script: Installing: Starting version v0.2021.08-639ccf013...
Creating network "talkyard_internal_net" with driver "bridge"
Creating talkyard_cache_1  ... done
Creating talkyard_rdb_1    ... done
Creating talkyard_search_1 ... done
Creating talkyard_app_1    ... done
Creating talkyard_web_1    ... done
2021-03-13T07:23:09+00:00 upgrade-script: Installing: Setting current version number to v0.2021.08-639ccf013...
2021-03-13T07:23:09+00:00 upgrade-script: Done. Bye.

Once the installation is completed, you can check all running containers with the following command:

docker ps

You should see the following output:

CONTAINER ID   I
MAGE                                         COMMAND                  CREATED          STATUS                         PORTS                                      NAMES
5793fefc561b   debiki/talkyard-web:v0.2021.08-639ccf013      "/bin/sh -c '/etc/ng…"   31 seconds ago   Up 28 seconds                  0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   talkyard_web_1
b3fee6dd28b8   debiki/talkyard-app:v0.2021.08-639ccf013      "/bin/sh -c 'rm -f /…"   32 seconds ago   Up 3 seconds                   3333/tcp, 9000/tcp, 9443/tcp, 9999/tcp     talkyard_app_1
0898dbac769d   debiki/talkyard-cache:v0.2021.08-639ccf013    "docker-entrypoint.s…"   36 seconds ago   Up 32 seconds                  6379/tcp                                   talkyard_cache_1
e583d8a4d553   debiki/talkyard-rdb:v0.2021.08-639ccf013      "/chown-logs-then-ex…"   36 seconds ago   Restarting (1) 5 seconds ago                                              talkyard_rdb_1
878e757d274d   debiki/talkyard-search:v0.2021.08-639ccf013   "/docker-entrypoint.…"   36 seconds ago   Up 33 seconds                  9200/tcp, 9300/tcp                         talkyard_search_1

Step 7 – Setup Cron Job

Next, you will need to set up a cron job to schedule auto backup and enable automatic upgrades. You can set up it by running the following scripts:

./scripts/schedule-logrotate.sh
./scripts/schedule-daily-backups.sh
./scripts/schedule-automatic-upgrades.sh

You can also check the Talkyard container log with the following command:

docker-compose logs app
docker-compose logs rdb

Step 8 – Access Talkyard

At this point, Talkyard is installed and configured. Now, open your web browser and access the URL http://talkyard.example.com. You will be redirected to the following page:

Click on the Continue button. You should see the following page:

Provide your admin email, username, and password, and click on the Create Account button. You will be redirected to the following page:

Provide your community name and click on the Next button. You should see the Talkyard dashboard on the following page:

Conclusion

Congratulations! You have successfully installed and configured Talkyard on Ubuntu 18.04. You can now create your own discussion forum with Talkyard easily using your VPS hosting account from Atlantic.Net.

Get A Free To Use Cloud VPS

Free Tier Includes:
G3.2GB Cloud VPS Free to Use for One Year
50 GB of Block Storage Free to Use for One Year
50 GB of Snapshots Free to Use for One Year


Looking for a Hosting Solution?

We Provide Cloud, Dedicated, & Colocation.

  • Seven Global Data Center Locations.
  • Flexible Private, Public, & Hybrid Hosting.
  • 24x7x365 Security, Support, & Monitoring.
Contact Us Now! Med Tech Award FTC
SOC Audit HIPAA Audit HITECH Audit

Recent Posts

Get started with 12 months of free cloud VPS hosting

Free Tier includes:
G3.2GB Cloud VPS Server Free to Use for One Year
50 GB of Block Storage Free to Use for One Year
50 GB of Snapshots Free to Use for One Year


New York, NY

100 Delawanna Ave, Suite 1

Clifton, NJ 07014

United States

San Francisco, CA

2820 Northwestern Pkwy,

Santa Clara, CA 95051

United States

Dallas, TX

2323 Bryan Street,

Dallas, Texas 75201

United States

Ashburn, VA

1807 Michael Faraday Ct,

Reston, VA 20190

United States

Orlando, FL

440 W Kennedy Blvd, Suite 3

Orlando, FL 32810

United States

Toronto, Canada

20 Pullman Ct, Scarborough,

Ontario M1X 1E4

Canada

London, UK

14 Liverpool Road, Slough,

Berkshire SL1 4QZ

United Kingdom

Resources