Cómo instalar InvoicePlane con Nginx en Debian 9

Instalador web de FacturaPlane

InvoicePlane es una aplicación de facturación gratuita y de código abierto. Su código fuente se puede encontrar en este Github. Este tutorial le mostrará cómo instalar InvoicePlane en un nuevo sistema Debian 9 (stretch).

Requisitos

  • Servidor Web (Apache, NGINX). Este tutorial usará Nginx.
  • MySQL versión 5.5 o superior o la versión equivalente de MariaDB.
  • PHP versión 7.0, 7.1 o 7.2 con las siguientes extensiones de PHP instaladas y activadas:
  • php-gd
  • php-hash
  • php-json
  • php-mbstring
  • php-mcrypt
  • php-mysqli
  • php-openssl
  • php-recode
  • php-xmlrpc
  • php-zlib
  • Un servidor que ejecuta Debian 9.
  • Un usuario no root con privilegios sudo.

Pasos iniciales

Compruebe su versión de Debian:

lsb_release -ds
# Debian GNU/Linux 9 (stretch)

Configurar la zona horaria:

sudo dpkg-reconfigure tzdata

Actualice los paquetes de su sistema operativo (software). Ese es un primer paso esencial porque garantiza que tenga las últimas actualizaciones y correcciones de seguridad para los paquetes de software predeterminados de su sistema operativo:

sudo apt update && sudo apt upgrade -y

Instale algunos paquetes esenciales que son necesarios para la administración básica del sistema operativo Debian:

sudo apt install -y curl wget vim git unzip socat bash-completion apt-transport-https

Paso 1: instale PHP y las extensiones de PHP requeridas

La aplicación web InvoicePlane requiere PHP versión 7.0 o superior.

Instale PHP, así como las extensiones de PHP necesarias:

sudo apt install -y php-cli php-fpm php-common php-gd php-json php-mbstring php-mysql php-xmlrpc php-recode

Para mostrar PHP compilado en módulos, puede ejecutar:

php -m

ctype
curl
exif
fileinfo
. . .
. . .


Compruebe la versión de PHP:

php --version

# PHP 7.0.9-1~deb10u1 (cli) (built: Sep 18 2019 10:33:23) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.3.9, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.0.9-1~deb10u1, Copyright (c) 1999-2018, by Zend Technologies


Inicie y habilite el servicio PHP-FPM:

sudo systemctl start php7.0-fpm.service
sudo systemctl enable php7.0-fpm.service

Paso 2 – Instalar MariaDB

Instalar MariaDB:

sudo apt install -y mariadb-server

Compruebe la versión de MariaDB:

mysql --version

Inicie y habilite el servicio MariaDB:

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

Ejecute el script de instalación mysql_secure para mejorar la seguridad de MariaDB y establezca la contraseña para el usuario root de MariaDB:

sudo mysql_secure_installation

Responda todas las preguntas como se muestra a continuación:

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

Inicie sesión en el shell de MariaDB como usuario raíz:

mysql -u root -p
# Enter password

Cree una base de datos MariaDB y un usuario que usará para su instalación de InvoicePlane, y recuerde las credenciales:

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

Salga del shell de MariaDB:

quit

Reemplace dbname, nombre de usuario y contraseña con sus propios nombres.

Paso 3 – Instalar NGINX

Instale el servidor web Nginx:

sudo apt install -y nginx

Compruebe la versión de NGINX:

nginx -v
# nginx version: nginx/1.10.3

Inicie y habilite el servicio Nginx:

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

Configure NGINX para InvoicePlane. Ejecute sudo vim /etc/nginx/sites-available/invoiceplane.conf y complete el archivo con la siguiente configuración:

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 snippets/fastcgi-php.conf;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
    }
}

Active la nueva configuración de billplane.conf vinculando el archivo al directorio habilitado para sitios:

sudo ln -s /etc/nginx/sites-available/invoiceplane.conf /etc/nginx/sites-enabled/

Pruebe la configuración de NGINX:

sudo nginx -t

Recargar NGINX:

sudo systemctl reload nginx.service

Paso 4 – Instalar FacturaPlane

Descargue la última versión estable de InvoicePlane y extraiga el archivo:

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

Vaya al directorio /var/www/invoiceplane:

cd /var/www/invoiceplane

Haga una copia del archivo ipconfig.php.example y cambie el nombre de la copia a ipconfig.php:

sudo cp ipconfig.php.example ipconfig.php

Abra el archivo ipconfig.php y agregue su URL en él:

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

Cambie la propiedad del directorio /var/www/invoiceplane a www-data:

sudo chown -R www-data:www-data /var/www/InvoicePlane

Ejecute sudo vim /etc/php.ini y configure date.timezone:

date.timezone = Region/City

Reinicie el servicio PHP-FPM:

sudo systemctl restart php7.0-fpm.service

Ejecute el instalador de InvoicePlane desde su navegador web y siga las instrucciones:

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

Una vez finalizada la instalación, puede iniciar sesión en InvoicePlane con la dirección de correo electrónico y la contraseña que eligió durante la instalación.

Si desea asegurar su instalación, puede deshabilitar la configuración. Para hacerlo, reemplace la línea DISABLE_SETUP=false con DISABLE_SETUP=true en su archivo ipconfig.php.

Paso 5: complete la configuración de InvoicePlane

InvoicePlane ahora está instalado y configurado, es hora de acceder a su asistente de instalación web.

Abra su navegador web y escriba la URL http://ejemplo.com. Será redirigido a la siguiente página:

Instalador web de FacturaPlane

Ahora, haga clic en el Configuración botón. Deberías ver la siguiente página:

Elige lengua

A continuación, elija el idioma y haga clic en el Continuar botón. Deberías ver la siguiente página:

Comprobar los requisitos del sistema

A continuación, haga clic en el Continuar botón. Deberías ver la siguiente página:

Detalles de la base de datos

Aquí, proporcione los detalles de su base de datos y haga clic en el Intentar otra vez botón. Deberías ver la siguiente página:

Conexión a la base de datos exitosa

Ahora, haga clic en el Continuar botón. Deberías ver la siguiente página:

Crear cuenta de usuario

Ahora, haga clic en el Continuar botón. Deberías ver la siguiente página:

Instalación de FacturaPlane completa

Ahora, proporcione todos los detalles requeridos, luego haga clic en el Continuar botón. Una vez completada la instalación, debería ver la siguiente página:

Iniciar sesión en FacturaPlane

Ahora, haga clic en el Acceso botón para acceder a la administración de InvoicePlane.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *