Installation · 6 min read · Dec 09, 2025

Comment installer InvoicePlane avec Nginx sur FreeBSD 12

InvoicePlane est une application de facturation gratuite et open-source. Ce tutoriel vous montrera comment installer InvoicePlane sur un système FreeBSD 12.

Exigences

  • Serveur Web (Apache, NGINX). Ce tutoriel utilisera Nginx.
  • MySQL version 5.5 ou supérieure ou la version équivalente de MariaDB.
  • PHP version 7.0, 7.1 ou 7.2 avec les extensions PHP suivantes installées et activées :
    • php-gd
    • php-hash
    • php-json
    • php-mbstring
    • php-mcrypt
    • php-mysqli
    • php-openssl
    • php-recode
    • php-xmlrpc
    • php-zlib

Prérequis

  • Un serveur exécutant FreeBSD 12.
  • Un utilisateur non-root avec des privilèges sudo.

Étapes initiales

Vérifiez votre version de FreeBSD :

uname -ro  
# FreeBSD 12.1-RELEASE

Configurez le fuseau horaire :

tzsetup

Mettez à jour les paquets de votre système d’exploitation (logiciel). C’est une première étape importante car elle garantit que vous disposez des dernières mises à jour et correctifs de sécurité pour les paquets logiciels par défaut de votre système d’exploitation :

freebsd-update fetch install  
pkg update && pkg upgrade -y

Installez quelques paquets essentiels nécessaires à l’administration de base du système d’exploitation FreeBSD 12.0 :

pkg install -y sudo vim unzip wget bash

Étape 1 - Installer PHP et les extensions PHP requises

L’application web InvoicePlane nécessite PHP version 7.0 ou supérieure.

Installez PHP, ainsi que les extensions PHP nécessaires :

sudo pkg install -y php72 php72-ctype php72-curl php72-dom php72-hash php72-iconv php72-gd php72-json php72-mbstring php72-openssl php72-session php72-simplexml php72-xml php72-zip php72-zlib php72-pdo php72-pdo_mysql php72-mysqli php72-filter php72-ftp php72-tokenizer php72-calendar php72-pecl-APCu php72-opcache

Vérifiez la version de PHP :

php --version  
  
# PHP 7.2.7 (cli) (built: Jul 25 2019 01:28:53) ( NTS )  
# Copyright (c) 1997-2018 The PHP Group  
# Zend Engine v3.3.7, Copyright (c) 1998-2018 Zend Technologies  
# with Zend OPcache v7.3.7, Copyright (c) 1999-2018, by Zend Technologies

Activez et démarrez le service PHP-FPM :

sudo sysrc php_fpm_enable=yes  
sudo service php-fpm start

Étape 2 - Installer MySQL

Installez le serveur de base de données MySQL :

sudo pkg install -y mysql57-server

Vérifiez la version de MySQL :

mysql --version  
# mysql  Ver 14.14 Distrib 5.7.26, for FreeBSD12.0 (amd64) using  EditLine wrapper

Activez et démarrez le service MySQL :

sudo sysrc mysql_enable="yes"  
sudo service mysql-server start

Exécutez le script mysql_secure_installation pour améliorer la sécurité de MySQL et définir le mot de passe pour l’utilisateur root de MySQL :

sudo mysql_secure_installation

Répondez à chacune des questions :

Would you like to setup VALIDATE PASSWORD plugin? N  
New password: your_secure_password  
Re-enter new password: your_secure_password  
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

Connectez-vous à l’interface MySQL en tant qu’utilisateur root :

sudo mysql -u root -p  
# Entrez le mot de passe  

Créez une base de données MySQL vide et un utilisateur pour Matomo et notez les identifiants :

CREATE DATABASE dbname;  
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';  
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';  
FLUSH PRIVILEGES;

Quittez MySQL :

exit

Remplacez dbname, username et password par vos propres noms.

Étape 3 - Installer acme.sh et obtenir un certificat Let’s Encrypt (optionnel)

Sécuriser votre site web avec HTTPS n’est pas nécessaire, mais c’est une bonne pratique pour sécuriser le trafic de votre site. Afin d’obtenir un certificat TLS de Let’s Encrypt, nous utiliserons le client Acme.sh. Acme.sh est un logiciel de shell UNIX pur pour obtenir des certificats TLS de Let’s Encrypt sans dépendances.

Téléchargez et installez Acme.sh :

sudo pkg install -y acme.sh

Vérifiez la version d’Acme.sh :

acme.sh --version  
# v2.8.2

Obtenez des certificats RSA et ECC/ECDSA pour votre domaine/nom d’hôte :

# RSA  
sudo acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength 2048  
# ECDSA  
sudo acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength ec-256

Après avoir exécuté les commandes ci-dessus, vos certificats et clés seront dans :

  • Pour RSA : le répertoire /etc/letsencrypt/example.com.
  • Pour ECC/ECDSA : le répertoire /etc/letsencrypt/example.com_ecc.

Étape 3 - Installer NGINX

Installez le serveur web NGINX :

sudo pkg install -y nginx

Vérifiez la version de NGINX :

nginx -v  
# nginx version: nginx/1.14.2

Démarrez et activez le service NGINX :

sudo sysrc nginx_enable=yes  
sudo service nginx start

Configurez Nginx pour InvoicePlane en exécutant :

sudo vim /usr/local/etc/nginx/invoiceplane.conf

Et remplissez le fichier avec la configuration suivante :

server {
    listen 80;
    listen [::]:80;

    server_name example.com;

    root /usr/local/www/invoiceplane;

    index index.php index.html;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~* \.php$ {  
      fastcgi_pass 127.0.0.1:9000;  
      include fastcgi_params;  
      fastcgi_index index.php5;  
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;  
    }
}

Testez la configuration de NGINX :

sudo nginx -t

Rechargez NGINX :

sudo service nginx restart

Étape 4 - Installer InvoicePlane

Téléchargez la dernière version stable d’InvoicePlane et extrayez l’archive :

sudo mkdir -p /usr/local/www  
cd /usr/local/www  
sudo curl -O -J -L https://invoiceplane.com/download/v1.5.9  
sudo unzip v1.5.9.zip  
sudo rm v1.5.9.zip  
sudo mv ip invoiceplane

Naviguez vers le répertoire /var/www/invoiceplane :

cd /usr/local/www/invoiceplane

Faites une copie du fichier ipconfig.php.example et renommez la copie en ipconfig.php :

sudo cp ipconfig.php.example ipconfig.php

Ouvrez le fichier ipconfig.php et ajoutez votre URL :

sudo vim ipconfig.php  
# Quelque chose comme ça  
IP_URL=http://example.com

Changez la propriété du répertoire /usr/local/www/invoiceplane à www:

sudo chown -R www:www /usr/local/www/invoiceplane

Exécutez sudo vim /etc/php.ini et définissez date.timezone:

date.timezone = Region/City

Redémarrez le service PHP-FPM :

sudo service php-fpm restart

Exécutez l’installateur d’InvoicePlane depuis votre navigateur web et suivez les instructions :

http://example.com/index.php/setup

Une fois l’installation terminée, vous pouvez vous connecter à InvoicePlane en utilisant l’adresse e-mail et le mot de passe que vous avez choisis lors de l’installation.

Si vous souhaitez sécuriser votre installation, vous pouvez désactiver la configuration. Pour ce faire, remplacez la ligne DISABLE_SETUP=false par DISABLE_SETUP=true dans votre fichier ipconfig.php.

Étape 5 - Compléter la configuration d’InvoicePlane

InvoicePlane est maintenant installé et configuré, il est temps d’accéder à son assistant d’installation web.

Ouvrez votre navigateur web et tapez l’URL http://example.com. Vous serez redirigé vers la page suivante :

Installateur web d'InvoicePlane

Maintenant, cliquez sur le bouton Setup. Vous devriez voir la page suivante :

Choisir la langue

Ensuite, choisissez la langue et cliquez sur le bouton Continue. Vous devriez voir la page suivante :

Vérifier les exigences système

Ensuite, cliquez sur le bouton Continue. Vous devriez voir la page suivante :

Détails de la base de données

Ici, fournissez les détails de votre base de données et cliquez sur le bouton Try Again. Vous devriez voir la page suivante :

Connexion à la base de données réussie

Maintenant, cliquez sur le bouton Continue. Vous devriez voir la page suivante :

Créer un compte utilisateur

Maintenant, cliquez sur le bouton Continue. Vous devriez voir la page suivante :

Installation d'InvoicePlane terminée

Maintenant, fournissez tous les détails requis, puis cliquez sur le bouton Continue. Une fois l’installation terminée, vous devriez voir la page suivante :

Connexion à InvoicePlane

Maintenant, cliquez sur le bouton Login pour accéder à l’administration d’InvoicePlane.

Liens

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.