InvoicePlane is a self-hosted invoicing application that helps you create and manage invoices, payments, and other financial activities for your business. In this tutorial, we will show you how to install InvoicePlane on your Elementary OS machine.
Before we begin, ensure that your system meets the following requirements:
To download the latest InvoicePlane release, visit the official Github repository of InvoicePlane using your favorite web browser. Once you arrive, find the latest release, and download the ZIP file.
After you have downloaded the ZIP archive, navigate to the default download path of your browser, locate the file, and extract it into the /var/www/html/ directory.
To extract files, you can use the command below:
sudo unzip InvoicePlane.zip -d /var/www/html/
After extracting the files, the next step is to modify the permissions on the /var/www/html/InvoicePlane directory so that Apache can read and write files in the invoice plane directory.
Run the command below to set the right ownership and permission:
sudo chown -R www-data:www-data /var/www/html/InvoicePlane/
sudo chmod -R 755 /var/www/html/InvoicePlane/
To create a virtual host for InvoicePlane, create a new configuration file /etc/apache2/sites-available/invoiceplane.conf using your favorite text editor.
sudo nano /etc/apache2/sites-available/invoiceplane.conf
Paste the content below into the file:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/invoiceplane/public
<Directory />
Options FollowSymLinks
AllowOverride none
</Directory>
<Directory /var/www/html/invoiceplane/public/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
After creating the InvoicePlane virtual host, enable it using the command below:
sudo a2ensite invoiceplane.conf
sudo a2enmod rewrite
Restart the Apache server so that the new configuration for InvoicePlane can be applied:
sudo systemctl restart apache2
Now you will need to create a new database for InvoicePlane, you can either use phpMyAdmin or the command line. Follow these steps to create a new database from the command line:
sudo mysql -u root -p
CREATE DATABASE invoiceplane;
CREATE USER ip@localhost IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON invoiceplane.* TO ip@localhost;
FLUSH PRIVILEGES;
EXIT
After completing all the steps above, the final steps are to access the InvoicePlane web installer and configure your application.
Visit http://your-ip-address/InvoicePlane
in your web browser, and follow the prompts to complete the installation. After the installation is done, you can access the invoice plane dashboard by visiting http://your-ip-address/InvoicePlane
on your browser.
That's it! You have successfully installed and configured InvoicePlane on your Elementary OS Latest machine.
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!