Medio ambiente
Para esta documentación, asumiremos que estás dispuesto a instalar NexoPOS en un entorno Linux. Como nos enfocamos específicamente en Ubuntu 24.04, esto también aplica a 22.04 y 26.06 (aún quedan más versiones compatibles a día de hoy).
Para la instalación nativa en Windows, consulte NexoPOS para Windows. Sin embargo, esto también puede aplicarse a Windows Subsystem for Linux (WSL2).
Instalación de PHP
Para instalar PHP en tu entorno, necesitarás ejecutar el siguiente comando:
sudo apt update
sudo apt install -y software-properties-common ca-certificates lsb-release apt-transport-https
sudo add-apt-repository -y ppa:ondrej/php
sudo apt update
Ahora, procederemos a instalar los módulos PHP requeridos.
sudo apt install -y php8.4 php8.4-cli php8.4-fpm php8.4-common php8.4-mysql php8.4-zip php8.4-gd php8.4-mbstring php8.4-curl php8.4-xml php8.4-bcmath php8.4-intl php8.4-soap php8.4-readline php8.4-opcache php8.4-redis php8.4-imagick php8.4-sqlite3 unzip curl git
Ahora puedes ejecutar php -v para ver la versión de PHP instalada.
Instalación de Nginx / Apache
Instalación de Nginx
Empezaremos con Nginx, que es la solución que usamos para la mayoría de nuestros proyectos.
sudo apt update
sudo apt install -y nginx
Es posible que eventualmente necesites habilitar el servicio de Nginx, y eso se puede hacer de esta manera:
sudo systemctl enable nginx
sudo systemctl start nginx
sudo systemctl status nginx
opcionalmente, es posible que desee conceder acceso al firewall a nginx. Esto es posible con el siguiente comando:
sudo ufw allow 'Nginx Full'
Configuración de Apache
Si estás usando Apache en lugar de Nginx, el siguiente comando es aplicable para ti.
sudo apt update
sudo apt install -y apache2
Del mismo modo, si quieres habilitar el servicio, necesitarás ejecutar el siguiente comando:
systemctl enable apache2
sudo systemctl start apache2
sudo systemctl status apache2
La misma excepción de firewall se puede aplicar a Apache ejecutando el siguiente comando:
sudo ufw allow 'Apache Full'
Como estás usando Apache para NexoPOS, debe habilitarse algún módulo para Apache:
sudo a2enmod rewrite headers env dir mime && sudo systemctl restart apache2
Instalando Composer
Composer es el gestor de dependencias utilizado por Laravel y, por lo tanto, es necesario para ejecutar NexoPOS. Se encarga de descargar y gestionar todos los paquetes de PHP que necesita la aplicación. Sin Composer, NexoPOS no puede instalarse ni funcionar correctamente.
Para instalar Composer globalmente en Ubuntu 24.04, ejecuta:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && \
php composer-setup.php --install-dir=/usr/local/bin --filename=composer && \
php -r "unlink('composer-setup.php');"
Puedes verificar la instalación con:
composer --version
Instalación de MariaDB
MariaDB es el motor de base de datos que NexoPOS utiliza para almacenar todos los datos de la aplicación, incluidas las ventas, los productos y las configuraciones. Es totalmente compatible con Laravel y ofrece una alternativa confiable y de alto rendimiento a MySQL.
sudo apt update
sudo apt install -y mariadb-server mariadb-client
Ahora podemos habilitar el servicio usando los siguientes comandos:
sudo systemctl enable mariadb
sudo systemctl start mariadb
sudo systemctl status mariadb
Después de la instalación, se recomienda asegurar el servidor de base de datos:
sudo mysql_secure_installation
sudo mysql_secure_installation:
sudo mysql -u root -p
Instalación de NVM y Node
NVM (Node Version Manager) te permite instalar y administrar varias versiones de Node.js de forma sencilla. Es útil para NexoPOS al crear recursos de frontend con herramientas como Vite.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
Luego, carga NVM en tu sesión actual:
export NVM_DIR="$HOME/.nvm" && [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
Instala Node.js 24 y configúralo como la versión predeterminada:
nvm install 24 && nvm use 24 && nvm alias default 24
Puedes verificar que todo funciona con:
node -v && npm -v
Node.js 24 ahora se usará de forma predeterminada en nuevas sesiones de terminal.
Aprende ahora cómo proceder con la instalación.