No More SSH Sessions Just to Start an App
If you have managed Node.js applications on a shared or VPS host before, you know the drill: SSH in, install nvm, pin a version, write a systemd unit file, configure nginx as a reverse proxy, wire up SSL, then pray the app stays up after a reboot. Every step is manual, every mistake is a production incident, and none of it is visible to anyone without root access.
Panelica now ships a complete Node.js Application Hosting module that handles all of that from inside the panel. No terminal required for day-to-day operations. Here is what it does and how it works.
Version Management: Multiple Node.js Versions, Side by Side
Each Node.js version runs as a fully independent installation. You can have Node 18, 20, and 22 all active on the same server simultaneously, and each application picks exactly the version it needs. There is no global version switch that breaks everything else when you upgrade one project.
Version installs and removals are root-level operations, meaning administrators control what is available on the server. Users pick from the versions that have already been installed. The one-click installer works across every OS Panelica supports: Ubuntu 22.04 and 24.04, Debian 12 and 13, AlmaLinux 9, and Rocky Linux 9.
Three Ways to Deploy an Application
Panelica gives you three deployment methods depending on where your code lives:
- Manual — The panel creates an empty application folder and drops in a working starter file so you have something to build on immediately. Useful when you are writing code directly on the server or transferring files yourself via SFTP.
- Git — Paste a repository URL and the panel runs
git clonefor you. After the clone completes,npm installruns automatically so your dependencies are ready without a second step. - ZIP Upload — Upload an archive and the panel extracts it. If the archive contains a single top-level folder (the common case with GitHub ZIP downloads), Panelica flattens it automatically so your app lands cleanly in its working directory. Like Git deploys,
npm installruns immediately after extraction.
In all three cases the panel handles file ownership and permissions. The application runs under the correct system user, not root.
Domain Binding and Automatic HTTPS
One of the more tedious parts of running Node.js in production is getting nginx in front of it. Panelica removes that entirely.
From the application card you can bind any domain that exists in your panel. The panel writes the nginx reverse proxy configuration, points it at your app's port, and issues or reuses an SSL certificate automatically. The domain goes HTTPS without any manual config.
If you need to move the domain to a different app, or just unbind it, the panel restores the domain's previous nginx configuration intact. No leftover proxy rules, no broken sites.
The PORT Contract
Your application must read its listening port from the process.env.PORT environment variable. The panel assigns the port and injects it at runtime. If the panel detects a hardcoded port number in your startup command or entry file, it shows a warning so you can fix it before the reverse proxy fails to connect.
// Correct: reads from environment
const port = process.env.PORT || 3000;
app.listen(port);
// This will trigger a panel warning
app.listen(4000); // hardcoded port
Live Logs and Resource Graphs
Application output streams in real time directly inside the panel. No more tail -f in a separate SSH session. The same card also shows live CPU usage, memory consumption, and uptime so you can spot a runaway process or a memory leak at a glance.
Applications are managed as systemd services under the hood, which means they restart automatically on crash and come back up after a server reboot with no manual intervention.
Real Resource Limits with cgroups v2
Panelica enforces CPU and RAM limits per application using systemd and Linux cgroups v2. A misbehaving Node.js process cannot consume all available memory on the server and take down every other site. Each app is contained within the limits you set, and those limits are hardware-enforced by the kernel, not advisory.
File Manager Integration
Every application card has a direct link to the app's directory in the panel file manager. The file manager opens scoped to that folder with the correct user permissions. You can edit configuration files, inspect logs on disk, or upload assets without navigating the full filesystem by hand.
RBAC: Granular Permission Control
The Node.js module plugs into Panelica's existing permission system. Under Settings > Permissions, a dedicated Node.js section lets administrators enable or disable individual capabilities per role:
- Creating and managing applications
- Installing and removing Node.js versions
- Git-based deployment
- ZIP upload deployment
- Running applications as root (disabled by default)
A reseller can be allowed to manage apps but not install new Node.js versions. A user can be permitted to deploy from Git but not from ZIP. The granularity matches what you would expect from a multi-tenant hosting environment.
License Visibility and Language Support
The Node.js module appears on panels whose license includes the feature. The entire interface is available in all 31 languages the panel supports, with full translation parity across every UI string in the module.
Try It in 30 Seconds
Every new application includes a one-click "Hello Panelica" example that deploys a minimal working Express app immediately. It gives you something live to look at before you connect your real codebase, and it confirms that your Node.js version, port assignment, and reverse proxy are all working correctly in your environment.
A More Complete Node.js Manager
The traditional panels that include Node.js support tend to bolt it on as an afterthought: one version, no resource limits, manual nginx config, no real-time visibility. Panelica's implementation is designed for daily use by developers and agencies managing real applications in production.
Multiple versions side by side. Three deploy paths. Domain binding with automatic HTTPS. Live logs and resource graphs. cgroups v2 isolation. Granular RBAC. The whole interface available in 31 languages.
If you are already running Panelica, the Node.js section is in your panel now. If you are evaluating hosting panels and Node.js support is on your checklist, the Panelica community forum is a good place to ask questions or see how others are using it.