cPanel Setup Guide
Deploy BucksBee on your cPanel server — step by step
This guide walks you through deploying BucksBee on a cPanel shared hosting environment using Node.js via Setup Node.js App (or Passenger) and a PostgreSQL database.
Prepare Your Files
Compress your project folder into a .zip archive. Make sure node_modules is excluded — do not include it.
node_modules keeps the zip small and avoids platform incompatibilities.
Upload to cPanel
Log into your cPanel dashboard and open File Manager. Navigate to your document root (usually public_html or a subdirectory like public_html/bucksbee).
- Click Upload and select your
bucksbee.zip - Once uploaded, right-click the zip and choose Extract
- After extraction, delete the zip file
yourdomain.com/app), upload to public_html/app.
Create PostgreSQL Database
In cPanel, find the PostgreSQL Databases wizard:
- Create a new database (e.g.
bucksbee_db) - Create a database user with a strong password
- Assign the user to the database with ALL PRIVILEGES
Import Database Schema
Open phpPgAdmin (or PostgreSQL section) in cPanel. Select your database, click the SQL tab, and paste the schema from config/schema.sql.
Alternatively, import via command line (if SSH is available):
Configure Environment Variables
Rename .env.example to .env (or create a new .env file) in your app root with the following values:
.env to version control. Keep your secrets safe.
Install Dependencies
In cPanel, open Setup Node.js App (or Passenger):
- Click Create Application
- Node.js version: Select 20.x or higher
- Application root: Browse to your uploaded folder (
public_htmlor subdirectory) - Application URL: Choose your domain and path
- Application startup file:
server.js - Click Create
After creation, open the app's Run npm install tab and click Run npm install. This installs all dependencies from package.json.
Start the App & Verify
Back in Setup Node.js App, click the Start App button (or restart if it auto-started).
Visit your domain to verify the app is running:
- Open
https://yourdomain.com— you should see the landing page - Test a route like
/api/apk-status— you should get a JSON response - Register a test account and verify the dashboard loads
Set Up a Cron Job (Optional)
BucksBee uses a background script to monitor blockchain deposits. In cPanel, go to Cron Jobs and add:
For precise 15-second intervals, create a wrapper script or use a tool like sleep:
Troubleshooting Tips
- App won't start: Check
server.jsis in the root you specified. Verifypackage.jsonexists andnpm installcompleted. - Database connection error: Confirm DB host, name, user, and password in
.env. Some cPanel hosts uselocalhostbut others require a socket path. - Blank page / 503: Your Node.js app may have crashed. Restart it from Setup Node.js App and check error logs.
- Assets not loading (CSS/JS): Make sure
public/directory is in the correct location relative toserver.js. - Session not persisting: Ensure
SESSION_SECRETis set and the PostgreSQL session table was created by the schema import. - Port issues: On cPanel, your app runs on a random port and is proxied via Apache. Use
process.env.PORTin your app (BucksBee handles this automatically).