Deploy with Confidence
Complete guides and tutorials to deploy your Node.js projects seamlessly. From setup to production, we've got you covered.
Documentation Index
1. Getting Started Guide
NodeSaaS Deploy makes it easy to deploy your Node.js projects to any server. This guide will walk you through the entire process in just a few minutes.
Note: This guide assumes you have a working Node.js project ready to deploy. If you're just starting out, we recommend having your package.json file prepared with all dependencies listed.
What You'll Learn
- How to prepare your Node.js project for deployment
- How to configure server connections
- How to deploy in minutes using our platform
- How to monitor and manage deployments
Ready to get started? Head to your dashboard to create your first deployment!
2. System Requirements
Server Requirements
- • Node.js: Version 18.x, 20.x, or 22.x LTS recommended
- • RAM: Minimum 512MB for small apps, 2GB+ for production
- • Storage: At least 10GB free disk space
- • OS: Linux (Ubuntu 20.04+, CentOS 7+), or Windows Server 2019+
Connection Methods
Choose one of the following to connect your server:
- • SSH: Recommended for secure, key-based authentication
- • SFTP: Secure file transfer protocol
- • FTP: Basic file transfer (less secure, not recommended)
Security Tip: Always use SSH with key authentication for production servers. Enable firewall rules to restrict access to only necessary ports.
3. Account Setup
Get your NodeSaaS Deploy account ready in three simple steps:
Create Your Account
Sign up at the registration page with your email and password
Verify Your Email
Click the verification link sent to your email inbox
Log In
Access your dashboard and start deploying immediately
4. Preparing Your Project
Before deploying, make sure your Node.js project is properly configured:
package.json
Your project must have a package.json file with a start script:
{
"name": "my-saas-app",
"version": "1.0.0",
"scripts": {
"start": "node server.js",
"dev": "nodemon server.js"
},
"dependencies": {
"express": "^4.18.2",
"dotenv": "^16.0.3"
}
} Environment Variables
Create a .env file for production secrets:
NODE_ENV=production PORT=3000 DATABASE_URL=postgresql://user:password@db.example.com/myapp API_KEY=your_secret_key
Important: Never commit .env files to version control. Use .gitignore to exclude them.
5. Server Configuration
Configure your server details to enable deployment:
Server Connection Details
- Server Name: A friendly name for your server (e.g., "Production", "Staging")
- Protocol: Choose SSH, SFTP, or FTP based on your setup
- Hostname: Your server's IP address or domain name
- Port: Default SSH port is 22, FTP is 21, SFTP is 22
- Username: Server login username
- Password/Key: Server login password or SSH key
- Deployment Folder: Path where your app will be deployed (e.g., /var/www/myapp)
SSH Key Authentication (Recommended)
For maximum security, use SSH key authentication instead of passwords:
ssh-keygen -t rsa -b 4096 -f ~/.ssh/myapp_key ssh-copy-id -i ~/.ssh/myapp_key.pub user@example.com
6. Step-by-Step Deployment
Deploy your Node.js project using NodeSaaS Deploy:
Step 1: Prepare Your Project
Zip your project folder (include package.json and all source files)
Step 2: Create New Deployment
Go to Dashboard → Click "New Deployment" → Upload your project ZIP file
Step 3: Configure Server
Enter your server connection details (hostname, port, credentials, deployment path)
Step 4: Configure Deployment
Select Node.js version, environment (dev/staging/prod), database type, and options
Step 5: Review & Deploy
Review all settings and click "Deploy Now" to start the deployment
Step 6: Monitor Progress
Watch the progress bar and logs as your app deploys. You'll be redirected to view deployment details once complete.
7. Auto-Deploy Setup
Enable automatic deployments when you push to your Git repository:
Enable Auto-Deploy
- 1. Go to your deployment settings
- 2. Enable "Auto-deploy on git push"
- 3. Copy your webhook URL
- 4. Add it to your GitHub/GitLab repository settings
- 5. Every push will now trigger an automatic deployment!
8. Best Practices
Use Environment Variables
Store sensitive data like database URLs and API keys in environment variables, not in code.
Monitor Your Deployments
Check deployment logs regularly and set up alerts for failed deployments.
Keep Node.js Updated
Regularly update to the latest LTS version of Node.js for security patches.
Use Production Process Manager
Use PM2 or similar tools to manage your Node.js processes in production.
Backup Your Data
Regularly backup your database and application files to prevent data loss.
Use HTTPS
Always use SSL/TLS certificates for secure communication. Use free certificates from Let's Encrypt.
9. Troubleshooting
Connection Failed
Cause: Server is unreachable or credentials are incorrect.
- ✓ Verify server hostname/IP address
- ✓ Check username and password
- ✓ Ensure server port is accessible
- ✓ Check firewall rules allow connection
Deployment Fails
Cause: Usually missing dependencies or incorrect Node.js version.
- ✓ Ensure package.json is included in deployment
- ✓ Verify Node.js version matches requirement
- ✓ Check for syntax errors in code
- ✓ Review deployment logs for specific errors
App Crashes After Deployment
Cause: Environment variables not set or database connection issues.
- ✓ Set all required environment variables on the server
- ✓ Verify database connection string
- ✓ Check server logs for error messages
- ✓ Ensure all dependencies are installed
11. Common Errors
Error: "ECONNREFUSED"
Your app is trying to connect to a service that's not running. Check database, Redis, or API connections.
Error: "Cannot find module"
A dependency is missing. Run npm install on the server or include node_modules in deployment.
Error: "Port already in use"
Another process is using your app's port. Change the port or kill the existing process.
Error: "Permission denied"
Your user account lacks permissions. Contact your server admin or use sudo (not recommended for security).
12. Frequently Asked Questions
Can I deploy multiple Node.js apps on one server?
Yes! Use different ports for each app and set up reverse proxies (like Nginx) to route traffic to each app based on the domain.
What databases are supported?
Any database compatible with Node.js drivers: PostgreSQL, MySQL, MongoDB, SQLite, etc. Our platform helps you connect and manage them.
How do I roll back to a previous deployment?
View your deployment history and click the deployment you want to restore. You can redeploy any previous version instantly.
How often can I deploy?
Deploy as often as you need! Enable auto-deploy on git push for continuous deployment, or manually deploy whenever you're ready.
Can I deploy from GitHub or GitLab directly?
Yes! Enable auto-deploy and add our webhook to your GitHub/GitLab settings. Every push will trigger an automatic deployment.
Is there downtime during deployment?
Typical deployments take under 2 minutes. Use a process manager like PM2 to minimize downtime, or set up multiple instances with a load balancer.
Still Need Help?
Contact Support
Our support team is here to help. Reach out through the contact form on our website.
Get Support