InvoicePlane met Nginx op Fedora 29 te installeren

InvoicePlane is eengratis en open bron factureringsprogramma. De broncode ervan is te vinden op deze Github. Deze handleiding laat je zien hoe je InvoicePlane op een vers Fedora 29 systeem kunt installeren.

Vereisten

  • WebServer (Apache, NGINX). Dezehandleiding zal Nginx gebruiken.
  • MySQL versie 5.5 of hoger of de gelijkwaardige versie van MariaDB.
  • PHP versie 7.0 of hoger met de volgende PHP uitbreidingen geïnstalleerd en geactiveerd:
  • php-gd
  • php-hash
  • php-json
  • php-mbstring
  • php-mcrypt
  • php-mysqli
  • php-openssl
  • php-recode
  • php-xmlrpc
  • php-zlib

Vereisten

  • Een server waarop Fedora 29 draait.
  • Een niet-root gebruiker met sudo privileges.

Eerste stappen

Controleer je Fedora systeemversie:

cat /etc/fedora-release
# Fedora release 29 (Twenty Nine)

Stel de tijdzone in:

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Werk je besturingssysteem pakketten (software) bij. Dit is een belangrijke eerste stap omdat je er zeker van bent dat je de laatste updates en beveiligingsfixes voor de standaard softwarepakketten van je besturingssysteem hebt:

sudo dnf upgrade -y

Installeer enkele essentiële pakketten die nodig zijn voor basisbeheer van het Fedora besturingssysteem:

sudo dnf install -y vim wget curl git socat unzip bash-completion

Stap 1 – Installeer PHP en de vereiste PHP uitbreidingen

De InovicePlane webapplicatie vereist PHP versie 7.0 of hoger.

Installeer PHP, en ook de nodige PHP uitbreidingen:

sudo dnf install -y php-cli php-fpm php-common php-gd php-json php-mbstring php-mcrypt php-mysqlnd php-xmlrpc php-recode

Om PHP gecompileerd in modules te tonen, kun je:

php -m

ctype
curl
exif
fileinfo
. . .
. . .

Controleer de PHP versie:

php --version

# PHP 7.2.16 (cli) (built: Mar  5 2019 11:05:59) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

Start en schakel de PHP-FPM dienst in:

sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service

Stap 2 – Installeer MariaDB

Installeer MariaDB:

sudo dnf install -y mariadb-server

Controleer de MariaDB versie:

mysql --version
# mysql  Ver 15.1 Distrib 10.3.12-MariaDB, for Linux (x86_64) using readline 5.1

Start en schakel de MariaDB dienst in:

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Voermysql_secure installation script uit omMariaDB beter te beveiligen en stel het wachtwoord in voor MariaDBrootgebruiker:

sudo mysql_secure_installation

Beantwoord alle vragen zoals hieronder aangegeven:

Enter current password for root (enter for none):
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

Log in MariaDB shell in als de gebruiker root:

mysql -u root -p
# Enter password

Maak een MariaDB database en gebruiker die je voor je installatie van InvoicePlane zult gebruiken, en onthoud de credentials:

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

Verlaat de MariaDB shell:

quit

Vervang dbname, gebruikersnaam, en wachtwoord door je eigen namen.

Stap 3 - Installeer NGINX

Installeer Nginx webserver:

sudo dnf install -y nginx

Controleer de NGINX versie:

nginx -v
# nginx version: nginx/1.14.2

Start en schakel Nginx service in:

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Configureer NGINXvoor InvoicePlane. Voersudo vim /etc/nginx/conf.d/invoiceplane.confuit en vulhet bestand met de volgende configuratie:

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

    server_name example.com;

    root /var/www/invoiceplane;

    index index.php index.html;

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

    location ~ \.php$ {
include default.d/php.conf; fastcgi_index index.php; try_files $uri =404; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_pass /var/run/php-fpm/www.sock; } }

Test de NGINX configuratie:

sudo nginx -t

Herlaad NGINX:

sudo systemctl reload nginx.service

Stap 4 - Installeer InvoicePlane

Download de laatste stabiele versie van InvoicePlane en pak het archief uit:

sudo mkdir -p /var/www
cd /var/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

Navigeer naar de map/var/www/invoiceplane:

cd /var/www/invoiceplane

Maak een kopie van hetipconfig.php.example bestand enhernoem de kopie totipconfig.php:

sudo cp ipconfig.php.example ipconfig.php

Open hetipconfig.php bestand envoeg er je URL aan toe:

sudo vim ipconfig.php
# Something like this
IP_URL=http://example.com

Verander het eigendom van de map/var/www/invoiceplaneinnginx:

sudo chown -R nginx:nginx /var/www/invoiceplane

Startsudo vim /etc/php-fpm.d/www.confen stelde gebruiker en groep in opnginx. Aanvankelijk zullen ze ingesteld zijn opapache:

sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

Startsudo vim /etc/php.inien stelindate.timezone:

date.timezone = Region/City

Start de PHP-FPM dienst opnieuw:

sudo systemctl restart php-fpm.service

Start de InvoicePlane installer vanuit je web browser en volg de instructies:

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

Als de installatie voltooid is, kun je inloggen in InvoicePlane met het e-mailadres en wachtwoord dat je tijdens de installatie gekozen hebt.

Als je je installatie wilt beveiligen, kun je de setup uitschakelen. Vervang daartoe de regelDISABLE_SETUP=false doorDISABLE_SETUP=truein jeipconfig.phpbestand.

Stap 5 - Voltooi de installatie van InvoicePlane

InvoicePlane is nu geïnstalleerd en geconfigureerd, het is tijd om de web installatie wizard te openen.

Open je web browser en typ de URLhttp://example.com. Je wordt doorverwezen naar de volgende pagina:

FactuurPlane web installer

Klik nu op de Setup knop.Je zou de volgende pagina moeten zien:

Kies taal

Kies vervolgens de taal en klik op deGadoor knop.Je zou de volgende pagina moeten zien:

Voorwaarde controle geslaagd

Klik nu op het Gaverder knopje.Je zou de volgende pagina moeten zien:

Database opzet

Geef hier je database gegevens op en klik op de TryAgain knop.Je zou de volgende pagina moeten zien:

Er is een databank opgezet.

Klik nu op het Continueknopje.Je zou de volgende pagina moeten zien:

Gebruiker aanmaken

Klik nu op het Continueknopje.Je zou de volgende pagina moeten zien:

Installatie voltooid

Geef nu alle vereiste gegevens op en klik dan op deContinue knop.Als de installatie voltooid is, zou je de volgende pagina moeten zien:

Log in op InvoicePlane

Klik nu op de Login knop omhet beheer van InvoicePlane te openen.