Cómo instalar InvoicePlane con Nginx en Debian 9

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

Requisitos

  • Servidor web (Apache, NGINX). Este tutorialutilizará Nginx.
  • MySQL versión 5.5 o superior o la versión equivalente de MariaDB.
  • Versión de PHP 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

Requisitos previos

  • Un servidor con Debian 9.
  • Un usuario no root con privilegios sudo.

Pasos iniciales

Comprueba tu versión de Debian:

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

Configura la zona horaria:

sudo dpkg-reconfigure tzdata

Actualiza los paquetes de tu sistema operativo (software). Este es un primer paso esencial porque te asegura que tienes las últimas actualizaciones y correcciones de seguridad de los paquetes de software por defecto de tu sistema operativo:

sudo apt update && sudo apt upgrade -y

Instala 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 – Instalar PHP y las extensiones PHP necesarias

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

Instala PHP, así como las extensiones 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 el PHP compilado en módulos, puedes ejecutar:

php -m

ctype
curl
exif
fileinfo
. . .
. . .

Comprueba 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

Iniciar y habilitar el servicio PHP-FPM:

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

Paso 2 – Instalar MariaDB

Instala MariaDB:

sudo apt install -y mariadb-server

Comprueba la versión de MariaDB:

mysql --version

Inicia y habilita el servicio MariaDB:

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

Ejecuta el script mysql_secure installation para mejorar la seguridad de MariaDB y establece la contraseña del usuario de MariaDB root:

sudo mysql_secure_installation

Responde a todas las preguntas como se indica 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

Entra en el shell de MariaDB como usuario root:

mysql -u root -p
# Enter password

Crea una base de datos MariaDB y un usuario que utilizarás para la instalación de InvoicePlane, y recuerda las credenciales:

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

Sal del shell de MariaDB:

quit

Sustituyeel nombre de la base de datos, elnombre de usuario y lacontraseña por tus propios nombres.

Paso 3 – Instalar NGINX

Instala el servidor web Nginx:

sudo apt install -y nginx

Comprueba la versión de NGINX:

nginx -v
# nginx version: nginx/1.10.3

Inicia y activa el servicio Nginx:

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

ConfiguraNGINX para InvoicePlane. Ejecuta sudo vim /etc/nginx/sites-available/invoiceplane.conf y rellena 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; } }

Activa la nueva invoiceplane.conf configuración vinculando el archivo al directorio sites-enabled directorio:

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

Prueba la configuración de NGINX:

sudo nginx -t

Recarga NGINX:

sudo systemctl reload nginx.service

Paso 4 - Instalar InvoicePlane

Descarga la última versión estable de InvoicePlane y extrae 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

Navega hasta el directorio /var/www/invoiceplane:

cd /var/www/invoiceplane

Haz una copia del archivo ipconfig.php.example y renombra la copia a ipconfig.php:

sudo cp ipconfig.php.example ipconfig.php

Abre el archivo ipconfig.php y añade tu URL en él:

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

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

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

Ejecuta sudo vim /etc/php.ini y configura date.timezone:

date.timezone = Region/City

Reinicia el servicio PHP-FPM:

sudo systemctl restart php7.0-fpm.service

Ejecuta el instalador de InvoicePlane desde tu navegador web y sigue las instrucciones:

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

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

Si quieres asegurar tu instalación, puedes desactivar la instalación. Para ello, sustituye la líneaDISABLE_SETUP=falsepor DISABLE_SETUP=true en tu archivo ipconfig.php.

Paso 5 - Completa la instalación de InvoicePlane

InvoicePlane ya está instalado y configurado, es el momento de acceder a su asistente de instalación web.

Abre tu navegador web y escribe la URL http://example.com. Serás redirigido a la siguiente página:

Instalador web de InvoicePlane

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

Elige la lengua

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

Comprueba los requisitos del sistema

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

Detalles de la base de datos

Aquí, proporciona los detalles de tu base de datos y haz clic en el botón Intentar de nuevo. Deberías ver la siguiente página:

Conexión a la base de datos con éxito

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

Crear una cuenta de usuario

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

Instalación de InvoicePlane completa

Ahora, proporciona todos los detalles requeridos y haz clic en el botón Continuar. Una vez completada la instalación, deberías ver la siguiente página:

Acceder a InvoicePlane

Ahora, haz clic en el botón Iniciar sesión para acceder a la administración de InvoicePlane.

También te podría gustar...