Installation

Self-hosting your own Feedbacky instance.

Looking for an affordable hosting provider?

We've partnered with Senior Hosting to offer you affordable, high-performance VPS with Minecraft/Discord bot hosting. Get 10% off using code FEEDBACKY!

Check out the offer!

Thank you for your interest in using Feedbacky, follow this guide step by step in order to self-host your own instance, we have made this guide beginner friendly specifically for Linux newbies.

Please consider donating to Feedbacky!

Prerequisites

  • Feedbacky will consume approximately 300MB of memory when running.

  • At least 200MB of free space is needed for Feedbacky itself.

  • Feedbacky is passwordless (we use OAuth), you will need an account with at least one of these services;

  • In order for your users to be notified when their subscribed content is updated, you will need an SMTP server or use one of the following mail providers;

Operating System

Heads up!

If you plan on using a panel with Feedbacky, please read this FAQ section.

Docker

Size; ~330MB

Both the Docker Engine and Docker Compose are necessary dependencies for Feedbacky.

Installation Guide

1. Make sure that your system is up to date.

sudo apt update -y

2. Docker requires some dependencies to be installed on your system.

 sudo apt install -y ca-certificates curl gnupg lsb-release

3. Add Docker's official GPG key.

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

4. Use Docker's stable repository.

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

5. Update your system.

sudo apt update -y

6. Install Docker Engine and it's related packages.

sudo apt install -y docker-ce docker-ce-cli containerd.io

7. Test that the Docker Engine was successfully installed.

sudo docker run hello-world

8. Download the Docker Compose repository.

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

9. Change the permission of downloaded Docker Compose binaries.

sudo chmod +x /usr/local/bin/docker-compose

10. Test that Docker Compose was successfully installed.

docker-compose --version

MariaDB

Size; ~200MB

MariaDB is recommended over MySQL as it brings better performance but MySQL will still work with Feedbacky if you already have it installed.

Additional configuration needed, do not skip this part if you already have MariaDB installed.

Installation Guide

1. Update your system.

sudo apt update -y

2. Install the MariaDB server package.

sudo apt install -y mariadb-server

3. Run and go through the security script.

sudo mysql_secure_installation

The script will ask you to set a root password, press N to skip it. The root password is already tied to the system on Ubuntu and changing it could result in MariaDB breaking.

Additional Configuration

Docker will treat your container as a remote machine, we need to change the value of bind-address in order to accept non localhost connections.

4. Edit your 50-server.cnf.

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

5. Change the value of bind-address to 0.0.0.0.

50-server.cnf
bind-address            = 0.0.0.0

6. Save the file with CTRL + S and exit nano with CTRL + C.

7. Restart MariaDB.

sudo systemctl restart mariadb-server

Webserver

A webserver is needed in order to point a domain to your instance. Any will suffice as long as they support reverse proxy.

We have a guide for both Apache and Nginx, choose the one you prefer.

Apache

Size; ~10MB

Apache will require further configuration to enable reverse proxy support.

Installation Guide

1. Update your system.

sudo apt update -y

2. Install the Apache package.

sudo apt install -y apache2

3. Verify that Apache is running.

sudo systemctl status apache2

Nginx

Size; ~2MB

Nginx supports reverse proxy out of the box.

Installation Guide

1. Update your system.

sudo apt update -y

2. Install the Nginx package.

sudo apt install -y nginx

3. Verify that Nginx is running.

sudo systemctl status nginx

Caddy

Coming soon!

Certbot

Size; ~2MB

Certbot is a tool to generate SSL certificates, which we are covering in our Domain Setup guide.

Installation Guide

1. Update your system.

sudo apt update -y

2. Install the certbot package.

sudo apt install -y certbot

3. Install the dependencies for your webserver.

For Apache;

sudo apt install -y python3-certbot-apache

For Nginx;

sudo apt install -y python3-certbot-nginx

Terminal Multiplexer

Optional

During the startup process Feedbacky will use your current terminal window and unless you SSH again in your server with a new session, you won't be able to do anything else.

The solution to this is by using a terminal multiplexer, allowing you to run multiple sessions under a single window.

tmux

Size; ~940KB

Installation Guide

1. Update your system.

sudo apt update -y

2. Install the tmux package.

sudo apt install -y tmux

Screen

Size; ~840KB

Installation Guide

1. Update your system.

sudo apt update -y

2. Install the Screen package.

sudo apt install -y screen

Last updated