Instalar Magento 2 en VPS

Instalar Magento 2

📅 Publicado el 7 de agosto, 2026 · Por Equipo RedServicio

Instalar Magento 2 en VPS - RedServicio

Si tu negocio de comercio electrónico necesita dar el salto de verdad, instalar Magento 2 en un servidor Privado Virtual (VPS) deja de ser una opción y pasa a ser una necesidad. El hosting compartido se queda corto en cuanto a recursos; Magento pide carne y, para darla, necesitas que el procesador y la RAM sean solo tuyos. Es la diferencia entre alquilar una habitación y tener la llave de toda la casa. Vamos a ver cómo montar esto paso a paso para que tu tienda vuele, tal como solemos configurar en los planes de alta gama de RedServicio.

Requisitos previos y preparación del servidor

Antes de lanzarnos a subir archivos, hay que preparar el terreno. Hablamos del sistema operativo y del stack tecnológico. Para este tutorial, partimos de una base Linux (Ubuntu 20.04 o 22.04) y la pila LEMP (Linux, Nginx, MySQL, PHP). ¿Por qué Nginx y no Apache? Simple: Nginx aguanta mejor la alta concurrencia y es el servidor web que el propio equipo de Magento recomienda oficialmente.

1. Actualizar el sistema e instalar dependencias

Lo primero es entrar a tu VPS por SSH y poner el sistema al día:

sudo apt update && sudo apt upgrade -y

Y ahora, instalamos las utilidades básicas y el servidor web:

sudo apt install nginx git unzip curl -y

2. Instalación y configuración de PHP y Extensiones

Magento 2 es exigente con las versiones de PHP (normalmente 8.1 o 8.2 para las más actuales). No basta con el núcleo; necesitas un puñado de extensiones para que todo funcione sin errores:

sudo apt install php8.2-fpm php8.2-cli php8.2-common php8.2-mysql php8.2-xml php8.2-curl php8.2-gd php8.2-bcmath php8.2-mbstring php8.2-intl php8.2-zip php8.2-soap php8.2-xsl -y

Consejo de rendimiento: No te olvides de tocar el archivo php.ini (suele estar en /etc/php/8.2/fpm/php.ini). Magento pide memoria. Sube el memory_limit a al menos 2G y aumenta el max_execution_time. Si no lo haces, la instalación se cortará por timeout a mitad de camino.

Configuración de la base de datos MySQL/MariaDB

Para guardar todos los datos de tu tienda, hace falta un motor robusto. MariaDB (un fork de MySQL muy estable) es una apuesta segura:

sudo apt install mariadb-server -y
sudo mysql_secure_installation

Sigue los pasos del asistente. Pon una buena contraseña de root y limpia usuarios anónimos. Por seguridad, no está de más. Cuando termines, entra a la consola de MySQL:

sudo mysql -u root -p

Dentro de la consola, crea la base de datos y el usuario. Cambia ‘tu_password_seguro’ por algo que realmente recuerdes:

CREATE DATABASE magento2_db;
CREATE USER 'magento_user'@'localhost' IDENTIFIED BY 'tu_password_seguro';
GRANT ALL PRIVILEGES ON magento2_db.* TO 'magento_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Instalación de Composer

Composer es el gestor de dependencias por excelencia en PHP. Es la forma más limpia de bajar Magento y mantenerlo actualizado. Instálalo globalmente en tu VPS:

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

Un chequeo rápido para confirmar que todo ha ido bien:

composer --version

Descarga e instalación de Magento 2

Ahora viene la parte pesada. Por seguridad, no ejecutes Composer como root. Crea un usuario específico para esto:

sudo adduser magento
sudo usermod -aG sudo magento

Entra con ese usuario y ve al directorio donde vivirá tu web (normalmente /var/www/html o /var/www/tu_dominio.com):

su - magento
cd /var/www/html

Usa Composer para descargar la última versión. Necesitarás las access keys de tu cuenta de Magento Commerce o Marketplace. Si no tienes esas claves, puedes buscar una versión «Open Source», pero Composer es lo mejor para actualizar en el futuro:

composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition .

Te pedirá usuario (Public Key) y contraseña (Private Key). Introdúcelas y paciencia. Dependiendo de lo potente que sea tu VPS, esto puede tardar unos buenos minutos.

Configuración de permisos y propietario

Ojo aquí. Magento es muy quisquilloso con los permisos. Si fallas aquí, la tienda no cargará o tendrás errores de seguridad. Desde el directorio de instalación, lanza el script de permisos:

cd /var/www/html
find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
find var generated vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} +
chown -R :www-data .
chmod u+x bin/magento

Con esto, el servidor web (www-data) puede escribir en caché y medios, pero sin abrir la puerta a cualquiera.

Instalación mediante línea de comandos (CLI)

Olvida el instalador gráfico del navegador; suele dar timeouts y dolores de cabeza. La terminal es tu amiga. Ejecuta este comando ajustando dominio, base de datos y tu usuario de administrador:

bin/magento setup:install \
--base-url=http://tu_dominio.com/ \
--db-host=localhost \
--db-name=magento2_db \
--db-user=magento_user \
--db-password=tu_password_seguro \
--admin-firstname=Juan \
--admin-lastname=Perez \
[email protected] \
--admin-user=admin \
--admin-password=tu_admin_password \
--language=es_ES \
--currency=EUR \
--timezone=Europe/Madrid \
--use-rewrites=1 \
--search-engine=elasticsearch7

Nota técnica: Si tu VPS tiene poca RAM, el proceso puede fallar. Puedes subir la memoria de PHP solo para este comando o montar un archivo de swap temporal. En RedServicio nuestros VPS vienen preparados para absorber estos picos sin que tengas que preocuparte.

Configuración del Virtual Host en Nginx

Para que el mundo vea tu tienda, toca configurar Nginx. Magento nos facilita la vida con una plantilla. Copia el archivo de ejemplo:

cp /var/www/html/nginx.conf.sample /etc/nginx/conf.d/magento.conf

Edítalo y verifica que la directiva root apunte a /var/www/html/pub. Luego, crea el bloque del servidor para tu dominio en /etc/nginx/sites-available/tu_dominio.com:

server {
    listen 80;
    server_name tu_dominio.com www.tu_dominio.com;
    set $MAGE_ROOT /var/www/html;
    include /etc/nginx/conf.d/magento.conf;
}

Activa el sitio, comprueba que no hay erratas y reinicia Nginx:

ln -s /etc/nginx/sites-available/tu_dominio.com /etc/nginx/sites-enabled/
nginx -t
sudo systemctl restart nginx

Cron Jobs y Finalización

Magento vive de sus tareas programadas (Cron). Reindexar, enviar correos, generar los mapas del sitio… nada de esto pasa si el cron no está bien configurado:

bin/magento cron:install
crontab -l
sudo ufw allow 'Nginx Full'

Preguntas Frecuentes

  • ¿Puedo instalar Magento 2 en un VPS con 2GB de RAM?
    Puedes, pero estás en el límite. Se recomienda ir a por 4GB o más para evitar que el servidor se asfixie cuando compile.
  • ¿Es obligatorio usar Elasticsearch?
    Para las versiones 2.4.x, sí. Necesitas Elasticsearch u OpenSearch para que la búsqueda de productos funcione.

Conclusión

Saber instalar Magento 2 a mano en un VPS te da un control sobre el rendimiento y la seguridad que el hosting compartido nunca te podrá dar. Sí, requiere meter mano en Linux y servidores, pero el resultado es una máquina de vender preparada para crecer. Siguiendo estos pasos, tendrás un entorno de producción sólido en poco tiempo. Por supuesto, si prefieres evitar quebraderos de cabeza y contar con soporte experto día y noche, en RedServicio tenemos soluciones de hosting gestionado pensadas específicamente para tiendas Magento.

📝

Equipo RedServicio

Artículos escritos y revisados por nuestro equipo técnico especializado en hosting e infraestructura web en España.

¿Listo para un hosting de verdad?

Servidores en España · Soporte 24/7 en español · Migración gratuita

Ver Planes desde 3,95€/mes →

Te puede interesar:

Página GratisCrea tu web gratis

ClisecSeguridad informática

Scroll al inicio