Dans ce didacticiel, nous allons vous montrer comment installer InvoicePlane sur Ubuntu 20.04 LTS. Pour ceux d'entre vous qui ne le savaient pas, InvoicePlane est un site Web de facturation et de gestion des clients gratuit application qui permet à presque toutes les personnes ou entreprises d'émettre des factures à la demande. Elle est utilisée par de nombreuses organisations et indépendants pour gérer leurs paiements et leurs factures. Elle propose des modèles personnalisés, des thèmes et d'autres outils qui vous aident à augmenter la fonctionnalité d'InvoicePlane. Il prend également en charge plusieurs langues et plusieurs fournisseurs de paiement tels que Paypal, ou même Bitcoin via Coinbase.
Cet article suppose que vous avez au moins des connaissances de base sur Linux, que vous savez utiliser le shell et, plus important encore, que vous hébergez votre site sur votre propre VPS. L'installation est assez simple et suppose que vous s'exécutent dans le compte root, sinon vous devrez peut-être ajouter 'sudo
‘ aux commandes pour obtenir les privilèges root. Je vais vous montrer l'installation pas à pas de l'InvoicePlane sur Ubuntu 20.04 (Focal Fossa). Vous pouvez suivre les mêmes instructions pour Ubuntu 18.04, 16.04 et toute autre distribution basée sur Debian comme Linux Mint.
Prérequis
- Un serveur exécutant l'un des systèmes d'exploitation suivants :Ubuntu 20.04, 18.04 et toute autre distribution basée sur Debian comme Linux Mint.
- Il est recommandé d'utiliser une nouvelle installation du système d'exploitation pour éviter tout problème potentiel.
- Accès SSH au serveur (ou ouvrez simplement Terminal si vous êtes sur un ordinateur de bureau).
- Un
non-root sudo user
ou l'accès à l'root user
. Nous vous recommandons d'agir en tant qu'non-root sudo user
, cependant, vous pouvez endommager votre système si vous ne faites pas attention lorsque vous agissez en tant que root.
Installer InvoicePlane sur Ubuntu 20.04 LTS Focal Fossa
Étape 1. Tout d'abord, assurez-vous que tous vos packages système sont à jour en exécutant le apt
suivant commandes dans le terminal.
sudo apt update sudo apt upgrade
Étape 2. Installation de la pile LAMP.
Un serveur Ubuntu 20.04 LAMP est requis. Si vous n'avez pas installé LAMP, vous pouvez suivre notre guide ici.
Étape 3. Installation d'InvoicePlane sur Ubuntu 20.04.
Par défaut, InvoicePlane n'est pas disponible sur le référentiel de base Ubuntu 20.04. Nous téléchargeons maintenant la dernière version d'InvoicePlane avec la commande suivante ci-dessous :
wget -c -O v1.5.11.zip https://invoiceplane.com/download/v1.5.11
Ensuite, extrayez le fichier téléchargé :
mkdir /var/www/html/invoiceplane unzip v1.5.11.zip -d /var/www/html/invoiceplane
Ensuite, changez de répertoire et modifiez le ipconfig.php
fichier avec la commande suivante :
cd /var/www/html/invoiceplane cp ipconfig.php.example ipconfig.php cp htaccess .htaccess nano ipconfig.php
Ajoutez le fichier suivant :
IP_URL=http://invoice.your-domian.com DB_HOSTNAME=localhost DB_USERNAME=invplane DB_PASSWORD=password DB_DATABASE=invplanedb DB_PORT=3306
Nous devrons modifier certaines autorisations de dossiers :
chown -R www-data:www-data /var/www/html/invoiceplane/ chmod -R 755 /var/www/html/invoiceplane/
Étape 4. Configuration de MariaDB.
Par défaut, MariaDB n'est pas renforcée. Vous pouvez sécuriser MariaDB à l'aide de mysql_secure_installation
scénario. vous devez lire attentivement et en dessous de chaque étape qui définira un mot de passe root, supprimera les utilisateurs anonymes, interdira la connexion root à distance et supprimera la base de données de test et l'accès à MariaDB sécurisé :
mysql_secure_installation
Configurez-le comme ceci :
- Set root password? [Y/n] y - Remove anonymous users? [Y/n] y - Disallow root login remotely? [Y/n] y - Remove test database and access to it? [Y/n] y - Reload privilege tables now? [Y/n] y
Ensuite, nous devrons nous connecter à la console MariaDB et créer une base de données pour InvoicePlane. Exécutez la commande suivante :
mysql -u root -p
Cela vous demandera un mot de passe, alors entrez votre mot de passe root MariaDB et appuyez sur Entrée. Une fois que vous êtes connecté à votre serveur de base de données, vous devez créer une base de données pour Installation d'InvoicePlane :
MariaDB [(none)]> CREATE DATABASE invplanedb; MariaDB [(none)]> CREATE USER 'invplane'@'localhost' IDENTIFIED BY 'your-strong-password'; MariaDB [(none)]> GRANT ALL PRIVILEGES ON invplanedb.* TO 'invplane'@'localhost'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> EXIT
Étape 5. Configuration d'Apache.
Nous créons maintenant une nouvelle directive d'hôte virtuel dans Apache. Par exemple, créez un nouveau fichier de configuration Apache nommé 'invoiceplane.conf
' sur votre serveur virtuel :
nano /etc/apache2/sites-available/invoiceplane.conf
Ajoutez les lignes suivantes :
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/invoiceplane ServerName invoice.your-domain.com <Directory /var/www/html/invoiceplane/> Options +FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Maintenant, nous pouvons redémarrer le serveur Web Apache pour que les modifications aient lieu :
sudo a2ensite invoiceplane.conf sudo a2enmod rewrite sudo systemctl restart apache2
Étape 6. Configurez HTTPS.
Nous devrions activer une connexion HTTPS sécurisée sur InvoicePlane. Nous pouvons obtenir un certificat TLS gratuit auprès de Let's Encrypt. Installez le client Let's Encrypt (certbot) à partir du référentiel Ubuntu 20.04 :
sudo apt install certbot python3-certbot-apache
Ensuite, exécutez la commande suivante pour obtenir un certificat TLS gratuit à l'aide du plugin Apache :
certbot --apache -d invoice.your-domian.com
Il vous sera demandé de fournir votre adresse e-mail et d'accepter les conditions d'utilisation :
Enabled Apache rewrite module Redirecting vhost in /etc/apache2/sites-enabled/invoice.conf to ssl vhost in /etc/apache2/sites-available/invoice-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://invoice.your-domain.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=invoice.your-domain.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/invoice.your-domain.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/invoice.your-domain.com/privkey.pem Your cert will expire on 2022-04-23. To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Si le test réussit, rechargez Apache pour que la modification prenne effet :
sudo apache2ctl -t sudo systemctl reload apache2
Étape 7. Accéder à l'interface Web d'InvoicePlane.
Une fois l'installation réussie, ouvrez votre navigateur Web et accédez à l'interface Web d'InvoicePlane à l'aide de l'URL https://invoice.your-domain.com
. Vous devriez voir la page suivante :
Félicitations ! Vous avez installé avec succès InvoicePlane. Merci d'avoir utilisé ce didacticiel pour installer InvoicePlane sur le système Ubuntu 20.04 LTS Focal Fossa. Pour obtenir de l'aide supplémentaire ou des informations utiles, nous vous recommandons de consulter le site Web officiel d'InvoicePlane .