En esta guía te explicamos cómo utilizar Node.js en tu propio Cloud VPS o Servidor Dedicado cPanel gestionado por WNPower (servicio de management) utilizando la herramienta exclusiva "NodeJS Manager".
Si tienes un servicio de Hosting o Cloud Hosting, deberás utilizar esta otra guía: Cómo utilizar Node.js en tu hosting cPanel.
Si tienes un Cloud VPS o Servidor Dedicado autogestionado, te sugerimos instalar Node.js de manera manual: Cómo instalar Node.js de forma manual.
Sube y crea tu app de Node.js
Sube los archivos de tu App Node.js
Primero deberás subir los archivos de tu App de Node.js a tu cuenta. Para ello puedes hacer lo siguiente:
- Accede a la Terminal de cPanel de tu cuenta.
-
Clona el repositorio de la App. En este caso utilizaremos nuestra App de pruebas de Node.js:
cd ~
git clone https://github.com/wnpower/NodeJS-TestApp
cd NodeJS-TestApp
Si bien aquí utilizamos Git, puedes subir tu App desde el Administrador de Archivos de cPanel o con el cliente Git de cPanel, entre otros.
En este caso, el comando anterior descargará la App de pruebas en la carpeta "NodeJS-TestApp" del directorio raíz de tu cuenta.
No subas los archivos de tu App de Node.js a la carpeta web pública (public_html), sino por fuera de ella, por ejemplo /home/usuario/NodeJS-TestApp. Luego al crear la aplicación de Node.js podrás definir cuál será la ruta o URL pública para acceder a tu App vía web (en los pasos siguientes).
Si no tienes una app creada y deseas comenzar desde cero en el entorno de Node.js de tu cuenta (por ejemplo usando "npm" para instalar componentes desde cero), entonces puedes obviar esto, continuar al siguiente paso y luego de crear la App de Node.js en tu cuenta ingresar al entorno virtual directamente.
Crear la App de Node.js en tu cuenta de cPanel
- Ingresa dentro de tu servidor en cPanel a "NodeJS Manger", que se encuentra dentro del grupo de "Herramientas exclusivas":
-
Al ingresar, haz clic en "Nueva aplicación" para comenzar:
-
Completa el formulario con los siguientes datos y haz clic en el botón "Guardar" al final de la pantalla. En cada campo tienes disponible una descripción de su función:
- Versión NodeJS: versión de Node.js que ejecutará tu App.
- Modo de aplicación: es la variable de entorno de tu app que define el modo de ejecución. Por defecto, si no sabes que es esta variable, te sugerimos seleccionar "production".
- Dominio de despliegue: selecciona el dominio o subdominio donde estará hosteada tu app de Node.js. Si quieres desplegar tu app sobre un subdominio o dominio adicional, debes crearlo primero dentro de tu cPanel.
- Ruta del dominio: aquí indicarás cuál será la URL donde responderá tu app. Por defecto puedes dejarlo vacío para que tu App responda en tu dominio raíz. Sin embargo, si quieres que tu app sea accesible vía una subcarpeta, por ejemplo, dominio.com/testapp, deberás colocar "/testapp" en este campo (con la barra al principio).
- Ruta de la aplicación: debes indicar el nombre de la carpeta de tu App, que subiste en el paso anterior. Si tu app está subida en /home/usuario/NodeJS-TestApp, en este campo deberás colocar "NodeJS-TestApp".
- Nombre archivo inicio: debes indicar el nombre del archivo principal de tu app de Node.js (con extensión ".js"). -
Una vez creada la aplicación, verás una pantalla de resultado como la siguiente:
Y verás un mensaje de confirmación junto a tu App ya creada: -
Para continuar con la instalación de tu aplicación, haz clic en el botón "Editar" y dentro de ella haz clic en "Instalar dependencias". Esto ejecutará un "npm install" en tu app:
Verás una ventana con el resultado del proceso como la siguiente: -
Por último, si creaste tu App de Node.js en el raíz de tu dominio (es decir, no completaste nada en la opción "Ruta del dominio"), deberás asegurarte que no existe ningún archivo "index" o "default" que pueda interferir con el acceso web a tu app.
- ¡Listo! Si todo salió bien, cuando ingreses a tu dominio (o la URL que hayas asignado al crear la App), verás lo siguiente en pantalla:
Este sería el output de nuestra App de Node.js de pruebas que usamos en el ejemplo. Si has seguido los pasos con tu propia App, aquí deberías ver el output de tu propia aplicación.
Opciones Avanzadas
Entorno virtual de tu App de Node.js
El entorno virtual de nodeenv es un entorno de desarrollo aislado y exclusivo para tu App de Node.js, el cual permite que tengas diferentes versiones de Node.js en tu cuenta y sus paquetes asociados a cada app de Node.js por separado.
Si necesitas ejecutar comandos como "node" o "npm" desde la terminal o consola ssh, deberás ingresar dentro del entorno virtual de tu app.
Recuerda que el comando "npm run build" y los que compilan código, debes ejecutarlos en tu entorno de desarrollo local (en tu PC) ya que suelen consumir una cantidad elevada de recursos que pueden saturar tu cuenta o no completarse. Si necesitas ejecutarlos en tu propio servidor y fallaran, es posible que debas realizar un upgrade de plan con mayores recursos para poder completar este tipo de ejecuciones.
Cómo acceder al entorno virtual de tu App de Node.js:
- Edita tu aplicación:
- En la parte superior te mostrará el comando para acceder al entorno virtual de tu aplicación por terminal o consola ssh.
- Accede a la Terminal de cPanel de tu cuenta y pega el comando para abrir el entorno virtual de tu App de Node.js (copiado en el paso anterior). Puedes ejecutar comandos como "node --version" o "npm --version" para ver los resultados en pantalla:
Variables de Entorno
Las variables de entorno permiten configurar y personalizar el comportamiento de tu aplicación según el entorno de ejecución, como la configuración del servidor, las credenciales de bases de datos, o la habilitación de características específicas.
Para poder trabajar con las variables de entorno de tu app de Node.js haz lo siguiente:
- Edita tu aplicación:
- En la parte inferior puedes gestionar las variables de entorno:
- Una vez realizados los cambios, ve a la parte inferior y presiona "Guardar" para guardar los cambios (es muy fácil olvidarse de este paso!):
Estas variables de entorno podrás luego accederlas desde tu app mediante "process.env.NOMBRE_VARIABLE".
Problemas comunes
- Es probable que tengas inconvenientes para iniciar tu aplicación si utilizas módulos de ECMAScript: Error ERR_REQUIRE_ESM "Must use import to load ES Module".
- Si dentro de tu sitio utilizas React Router o Vue Router, o cualquier otro router/mvc que capture todas las peticiones web, deberás crear tu app de Node.js en una subcarpeta y crear dentro de ella un archivo ".htaccess" con la sentencia "RewriteEngine off" para que puedas acceder a ella vía web y sea ignorada por router en cuestión.
Puedes encontrar una lista completa de artículos de Node.js dentro de la categoría de Node.js en nuestro centro de ayuda donde tenemos diversas guías con los problemas más comunes que pueden ocurrir, con su explicación y solución para cada caso. Si no encuentras tu error en nuestro centro de ayuda, también puedes buscarlo en nuestra Comunidad de usuarios.
¡Eso es todo! Esperamos que te haya servido esta guía y que puedas correr Node.js en tu propio servidor correctamente.
Comentarios
0 comentarios
Inicie sesión para dejar un comentario.