Cómo instalar InvoicePlane en Ubuntu 18.04 LTS
InvoicePlane es una aplicación gratuita, de código abierto y autoalojada para gestionar tus facturas, clientes y pagos. Está especialmente diseñada para que los empresarios creen y gestionen sus facturas y pagos de clientes. Actualmente muchas empresas de todo el mundo utilizan esta aplicación para gestionar todo su círculo de facturación.
En este tutorial, explicaremos la instalación de InvoicePlane en Ubuntu 18.04 LTS (Bionic Beaver).
Requisitos
- Un servidor con Ubuntu 18.04.
- Un usuario no root con privilegios sudo.
Instalar el servidor LAMP
InvoicePlane se ejecuta en un servidor web, escrito en PHP y utiliza MariaDB para almacenar sus datos. Primero, instala el servidor Apache y MariaDB con el siguiente comando:
sudo apt-get install apache2 mariadb-server -y
A continuación, tendrás que añadir el repositorio PHP ondrej a tu sistema. Puedes añadirlo ejecutando el siguiente comando:
sudo apt-get install software-properties-common -y
sudo add-apt-repository ppa:ondrej/php
Una vez añadido el repositorio, actualiza el repositorio e instala PHP con todas las librerías necesarias con el siguiente comando:
sudo apt-get install php7.2 libapache2-mod-php7.2 php7.2-common php7.2-mbstring php7.2-xmlrpc php7.2-soap php7.2-gd php7.2-xml php7.2-intl php7.2-mysql wget unzip php7.2-cli php7.2-mcrypt php7.2-zip php7.2-curl -y
Una vez instalados todos los paquetes, abre el archivo php.ini y realiza algunos cambios:
sudo nano /etc/php/7.2/apache2/php.ini
Haz los siguientes cambios:
memory_limit = 256M upload_max_filesize = 128M max_execution_time = 360 date.timezone = Asia/Kolkata
Guarda y clsoe el archivo. A continuación, inicia el servicio de Apache y MariaDB y habilítalos para que se inicien al arrancar con el siguiente comando:
sudo systemctl start apache2
sudo systemctl enable apache2
sudo systemctl start mariadb
sudo systemctl enable mariadb
Configurar MariaDB
Antes de configurar MariaDB, asegura la instalación de MariaDB con el siguiente comando:
sudo mysql_secure_installation
Este script establecerá la contraseña de root, eliminará los usuarios anónimos, no permitirá el inicio de sesión de root de forma remota y eliminará la base de datos de prueba, como se muestra a continuación:
Set root password? [Y/n] n 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
Una vez asegurada MariaDB, inicia sesión en el shell de MariaDB:
mysql -u root -p
Introduce la contraseña de root y crea una base de datos y un usuario para InvoicePlane:
MariaDB [(none)]> CREATE DATABASE invplane_db;
MariaDB [(none)]> CREATE USER 'invplane'@'localhost' IDENTIFIED BY 'password';
A continuación, concede privilegios a la base de datos InvoicePlane con el siguiente comando:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON invplane_db.* TO 'invplane'@'localhost';
A continuación, ejecuta el comando FLUSH PRIVILEGES para que la tabla de privilegios sea recargada por MariaDB:
MariaDB [(none)]> FLUSH PRIVILEGES;
Por último, sal del shell de MariaDB:
MariaDB [(none)]> EXIT
Descarga e instala InvoicePlane
Primero, descarga la última versión de InvoicePlane con el siguiente comando:
wget -c -O v1.5.9.zip https://invoiceplane.com/download/v1.5.9
Una vez completada la descarga, descomprime el archivo descargado con el siguiente comando:
mkdir invoiceplane
unzip v1.5.9.zip -d invoiceplane
A continuación, cambia el directorio a invoiceplane y copia los archivos necesarios en el directorio raíz de Apache con el siguiente comando:
cd invoiceplane
sudo mv ip /var/www/html/invoiceplane
cd /var/www/html/invoiceplane
sudo cp ipconfig.php.example ipconfig.php
sudo cp htaccess .htaccess
A continuación, establece los permisos adecuados para el directorio invoiceplane:
sudo chown -R www-data:www-data /var/www/html/invoiceplane/
sudo chmod -R 755 /var/www/html/invoiceplane/
A continuación, crea un archivo de host virtual de Apache para InvoicePlane:
sudo nano /etc/apache2/sites-available/invoiceplane.conf
Añade las siguientes líneas:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/invoiceplane ServerName example.com ServerAlias www.example.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>
Guarda el archivo, cuando hayas terminado.
A continuación, habilita el archivo de host virtual de Apache y el módulo de reescritura con el siguiente comando:
sudo a2ensite invoiceplane.conf
sudo a2enmod rewrite
Por último, reinicia el servicio Apache para aplicar todos los cambios:
sudo systemctl restart apache2
Accede a 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:
Ahora, haz clic en el botón de Configuración. Deberías ver la siguiente página:
A continuación, elige el idioma y haz clic en el botón Continuar. Deberías ver la siguiente página:
A continuación, haz clic en el botón Continuar. Deberías ver la siguiente página:
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:
Ahora, haz clic en el botón Continuar. Deberías ver la siguiente página:
Ahora, haz clic en el botón Continuar. Deberías ver la siguiente página:
Ahora, proporciona todos los datos necesarios y haz clic en el botón Continuar. Una vez completada la instalación, deberías ver la siguiente página:
Ahora, haz clic en el botón Iniciar sesión. Deberías ver la siguiente página:
Aquí, proporciona tu nombre de usuario y contraseña de administrador, y luego haz clic en el botón Iniciar sesión. Serás redirigido al panel de control de InvoicePlane como se muestra a continuación: