This tutorial will guide you through the steps to install Helpy on Linux Mint. Helpy is an open-source customer support and ticketing application, and can be downloaded from https://github.com/helpyio/helpy.
Before you begin the installation process, you will need the following:
Before you start the installation process, you should make sure that your system is up-to-date. You can do this by running the following command in your terminal:
sudo apt update && sudo apt upgrade -y
This will update the package list and install any available updates.
Helpy requires certain packages to be installed on your server. You can install these packages by running the following command:
sudo apt install build-essential git curl libpq-dev postgresql postgresql-contrib redis-server nginx certbot python3-certbot-nginx -y
This command will install the necessary packages for Helpy to run.
build-essential
- The package that installs the necessary tools to compile software from source codegit
- The version control system to clone Helpy from Githubcurl
- The command-line tool to transfer data from or to a serverlibpq-dev
- The package that installs the libraries for PostgreSQLpostgresql
- The database management system that stores Helpy datapostgresql-contrib
- The additional tools for PostgreSQLredis-server
- The data structure server that stores Helpy's caching and session datanginx
- The web server that serves Helpy content from the Internetcertbot
and python3-certbot-nginx
- The package that installs the Let's Encrypt client and Nginx plugin to manage SSL/TLS certificatesHelpy is built on top of Ruby on Rails, which requires a specific version of Ruby to be installed. You can install Ruby from the official PPA by running the following commands:
sudo apt-add-repository -y ppa:rael-gc/rvm
sudo apt-get update
sudo apt-get install rvm -y
This will install rvm
, the Ruby Version Manager, which makes it easy to switch between different versions of Ruby. After the installation, run the following command:
source /etc/profile.d/rvm.sh
This will source the RVM environment script, and configure the terminal environment to use RVM.
Now that you have installed the dependencies and Ruby, you can proceed to install Helpy. You can download Helpy from Github using the git
command:
git clone https://github.com/helpyio/helpy.git
This will clone Helpy's code from Github into a directory named helpy
in your current directory.
Before running Helpy, you must configure it with your desired settings. Navigate to the helpy
directory by running the following command:
cd helpy
Next, copy the default configuration file by running the following command:
cp config.example.yml config.yml
This will create a new configuration file with default values that you can customize. You can edit this file by running the following command:
nano config.yml
This will open the configuration file in the terminal. You can customize the values in this file to match your desired settings.
Helpy requires certain dependencies to be installed to function correctly. You can install these dependencies by running the following commands:
gem install bundler
bundle install --without development test
This will install bundler
, the dependency manager for Ruby, and download and install all of Helpy's dependencies.
Helpy uses PostgreSQL as its database system. You must create a user and a database for Helpy to use. You can do this by running the following commands:
sudo -u postgres createuser -s helpy
sudo -u postgres psql -c "alter user helpy with password 'YOUR_PASSWORD';"
sudo -u postgres createdb -O helpy helpy_production
Replace YOUR_PASSWORD
with a new password for the Helpy user. This will create a new user named helpy
with a password, and create a new database named helpy_production
that is owned by the helpy
user.
Next, you need to set up Helpy by running the following command:
RAILS_ENV=production bundle exec rake helpy:setup
This command will create the database schema, populate it with default data, and generate a configuration file.
You can start the Helpy server by running the following command:
RAILS_ENV=production rails s -b 0.0.0.0
This will start the Helpy server and bind it to all network interfaces, so you can access it from your web browser.
To access Helpy through a web browser, you must configure Nginx to proxy requests to the Helpy server. You can do this by creating a new Nginx virtual host file by running the following command:
sudo nano /etc/nginx/sites-available/helpy.conf
In this file, paste the following configuration:
server {
listen 80;
server_name your-domain.com;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Replace your-domain.com
with your own domain name or IP address. Save the file and exit the editor.
Then, create a symbolic link to enable the configuration by running the following command:
sudo ln -s /etc/nginx/sites-available/helpy.conf /etc/nginx/sites-enabled/
Finally, restart Nginx to load the new configuration by running the following command:
sudo systemctl restart nginx
To secure your Helpy installation with HTTPS, you can use Let's Encrypt, a free and open certificate authority. You can install Let's Encrypt by running the following command:
sudo certbot --nginx -d your-domain.com
Replace your-domain.com
with your own domain name or IP address. This command will prompt you to enter an email address and to agree to the Let's Encrypt terms of service. After that, it will automatically obtain and install a new SSL/TLS certificate for your domain, and configure Nginx to use it.
At this point, you have successfully installed Helpy on your Linux Mint server, and configured it for production use. You can now visit your Helpy installation in your web browser by navigating to https://your-domain.com
. If you have any issues or questions, feel free to consult the Helpy documentation at https://docs.helpy.io/ or the official Github repository at https://github.com/helpyio/helpy/.
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!