Installation - Full Guide

Full guidance on how to self-host an instance.

Step 1: Point your domain to your server

Feel free to skip this step if you already have set up the domain.

If you have not done so, please add an A record on your domain's DNS server and point your domain to the server where you are going to host this software. We strongly recommend you use a subdomain such as "app.avocado.vc" as you might want to use the root domain for your general website.

We also strongly recommend you use Cloudflare to manage your domain. It is free and offers free SSL certificate. SSL is required to run this software properly.

Example of adding an A record on Cloudflare

Step 2: Install LEMP stack on Ubuntu 18.04

Feel free to skip this step if you already have set up your Nginx + PHP7.x + MySQL. Just remember to (1) create a database, (2) turn short_open_tag = On for your PHP, and (3) have php-curl extension installed.

Assuming you are using a new server with Ubuntu 18.04 system, please follow the following instructions to install LEMP stack.

LEMP installation instruction

You will need to create a database to store all your data. For example, you can name the database as avocado. You can also create a new user that can have access to this database if you do not want to use the root user.

Once you finish installing everything, make sure you turn the short_open_tag feature on in your php.ini file.

You can locate your php.ini file as instructed here. Mine is located at /etc/php/7.2/fpm/php.ini. In you php.ini file, make sure short_open_tag = on, upload_max_filesize and post_max_size variables are increased to a larger value to allow you handle attachments upload.

If you are using PHP-FPM, you must restart that service. Replace php7.2 with your own version, e.g, php7.1, php7.3, etc.

If you have not installed the php-curl extension, you can run the following commands to install it.

To enable large attachments uploading, you also want to update the limit of your Nginx as follows.

Step 3: Clone the project to your server

To get a copy of this, please contact [email protected] to get your API Key/Secret first. Clone the project to your server. Go to your web server root folder (e.g. /var/www) and run the following command to clone a copy. Replace DOMAIN, API_KEY , API_SECRET with your own ones.

Step 4: Edit your website settings

If you are using Nginx, your website settings are usually under /etc/nginx/sites-available/. Go to this folder and create a new website profile as instructed below.

In the new file, copy and paste the following content. Please replace YOUR DOMAIN with the domain you created in the first step.

After adding this content, save and close the file. Enable your new server block by creating a symbolic link from your new server block configuration file (in the /etc/nginx/sites-available/ directory) to the /etc/nginx/sites-enabled/ directory:

Then, unlink the default configuration file from the /sites-enabled/ directory:

Last but not least, reload the Nginx configuration profiles.

If you are using Apache instead of Nginx, remember to add the following to your .htaccess file to avoid people visiting your .env file that will contain your confidential website configuration information.

Step 5: Edit folder permissions

The software need write permission to some folders to create configuration files and save uploaded attachments.

Step 6: Finish installation

Go to your website, and you will be redirected to the installation page automatically if everything works properly. For example, in this case, we can open https://demo.avocado.vc

You will need to set up your super admin account and provide the MySQL database connection information, which you set up in your first step when installing MySQL.

Installation page

Once you have successfully installed, you will be redirected to the login page. You can now login with the super admin account that you just set up. You can also change any setting or customize the site under "Settings" once you log into the platform.

Last updated

Was this helpful?