Installing NexoPOS 4.x On Plesk

Plesk is one of the popular hosting management applications available. One of the benefits of using Plesk is that you have the support of composer and Github, helpful to clone and deploy a project.

In this guide, You'll learn how to install NexoPOS 4.x on Plesk.

Requirements

Before installing NexoPOS 4.x, let's talk about the requirements that need to be fulfilled :

  • SSH Access: this is required to run composer commands
  • 2 GB of Ram: while it's not an absolute requirement, NexoPOS works well there.
  • supervisor: If you cannot install supervisor from the CLI, you might need to request the installation to your provider.
  • PHP 7.4 : it's the minimum version required.
  • Composer 2: If you're using Composer 1, you might need to have exactly at least 2 GB of RAM.

Getting Started

Let's now break down everything you need to do in order to install NexoPOS on Plesk.

Configuring The Domain

The first step is configuring the domain. Assuming you're installing NexoPOS on a subdomain, we'll head to the "Websites & Domains".

From there, you'll click on "Add Subdomain" (but it's also applicable to "Add Domain").

This will take you to a form where you'll have to fill in the details for your subdomain. So for the subdomain name, we'll choose "pos" but for the document directory, we need to add "/public" as the "index.php" is located there.

Now, we'll enable Git (but it's not mandatory if you know how to upload the files), so that we can quickly clone the project.

Now the domain will be created and we'll be able to access it. Now, we need to disable the default Plesk page. For that, we'll access the page manager.

From there, we'll make sure to open the folder "public" of the project and search the file "index.html" and delete it.

Now if you access the website, you should see an error like this.

This error is caused by the composer which dependencies is not installed. So we'll proceed to the installation.

Installing Dependencies

Now that the project is copied, we need to download and install composer packages. From the website and domains, we'll click on "PHP Composer".

Then from the next page, you should click on "Scan". If the folder is valid, you should have the package being installed.

When the scan is complete, you should have the following page displayed. You just have now to click on "install" to proceed.

Creating An Environment File

The environment file is used to save the database credentials and make other useful configurations. Now we need to create a .env file using the existing .env.example (we'll just rename it). Let's then go to the file manager and locate the file .env.example.

We should now make sure to rename the file ".env" only.

Now, let's edit the .env file and make sure to change the value of "APP_KEY" to a random long value. Your value shouldn't be exactly as it is here.

Additionally, you might need to connect to the CLI to run the command on the directory where NexoPOS is installed :

php artisan storage:link

From now, if we access the project on the browser, we should see a page like this.

Database Configuration

Now, we'll proceed by configuring the database. Head to the "Websites and Domains" and from the subdomain, you've created, click on "Database".

On the next page, you'll have to click on "Add Database".

Now, make sure to fill in all the required information for creating the database. You should also keep that information somewhere as you'll need it to complete the installation of NexoPOS.

Now scroll down and click on "Create". You'll then see a page like this.

Installing NexoPOS 4.x

From now we're ready to proceed with the installation. You just have to follow the instructions and that's it. When you're on the welcome page, you'll either need to click on one of the available links (Dashboard, Sign in, Sign up), you'll be redirected to the setup page.

Click on "Database Configuration" to proceed with the installation. The next page will display a form where you'll have to provide the database information.

Once the database credentials are complete, you'll land on a page where you're asked to provide the application and the main administrator credentials.

After having provided these, click on "Create Installation", and you'll land on the login page, which means you've successfully installed NexoPOS.

Troubleshooting

While installing, you might face some issues and we'll try to help you resolve them.

Wrong Composer Version

If you're using composer 1, you might face an error that is either related to the memory being exhausted. In that case, you should install composer 2. You'll probably need your hosting provider to assist you here.

Wrong Default PHP Version

While you can assign a PHP version to a project, you'll however need to have PHP 7.4 selected as the default PHP version for the system, because from the CLI (in case you're using the CLI), the version assigned to the domain or subdomain is not used. Alternatively, you can use one of the binaries available on Plesk :

/opt/plesk/php/7.4/bin/php

Manually Installed Composer 2

In case you install composer 2 manually from the CLI, you'll probably need to have the full path to it using the command :

which composer

You'll probably have the following output.

Typically, you might find yourself using Composer like this on the CLI :

/opt/plesk/php/7.4/bin/php /usr/local/bin/composer install

Wrong File Permission

While login into the system, you might see a permission issue error.

You can resolve it by deleting the file mentioned in the error.

Generating The APP_KEY from the CLI

If you can't type a random string of letters and numbers, you can use the CLI to generate it for you.

php artisan key:generate

Summarizing

So you're at the end of this guide. If you still can't install NexoPOS, let us know at [email protected]