Zeeploy Zeeploy Docs Dashboard

Documentation

The complete guide to building, deploying, and scaling on Zeeploy.

Getting Started

Zeeploy is a Next-Generation PaaS (Platform as a Service) that simplifies the deployment process. We take your code, containerize it, and deploy it to a globally accessible URL in seconds.

All new users start on our Free Plan, allowing you to deploy your first application immediately with no credit card required.

  1. Sign Up: Log in using your GitHub or Google account.
  2. Connect: Link your GitHub repository or upload a ZIP file.
  3. Deploy: We handle the build, provision resources, and launch your app.

How It Works & Security

Understanding our architecture helps you build better applications. Zeeploy prioritizes security and isolation by design.

Architecture

  • Containerization: Every deployment runs inside its own isolated Docker container. This ensures your application has its own file system and cannot interfere with other users.
  • Reverse Proxy: We use a high-performance proxy to route traffic from your custom domain or subdomain (e.g., app.zeeploy.xyz) to your container's internal port.
  • Ephemeral File System: The file system inside your container is ephemeral. This means any files written to disk will be lost if the deployment is restarted or redeployed. Always use an external database (like MongoDB, PostgreSQL) or cloud storage (S3) for persistent data.

Security Measures

  • Resource Isolation: CPU and RAM are strictly limited based on your plan (using Docker cgroups) to prevent "noisy neighbor" issues.
  • Network Isolation: Containers operate on a private internal network. Only the exposed HTTP port (8080) is accessible via our proxy.
  • Encryption: All sensitive data, including GitHub access tokens, are encrypted at rest using AES-256-GCM.
  • Traffic Protection: We employ rate limiting (WAF) and automated SSL certificate management to keep your traffic secure.

Deploying a Project

Method 1: GitHub Integration (Recommended)

Best for continuous deployment. We automatically listen for push events to your repository.

  1. Grant Zeeploy access to your repository.
  2. Push code to your default branch.
  3. We detect the change, pull the new code, build a new container, and seamlessly switch traffic to the new version.

Method 2: Manual Upload

Deploy without a git history by uploading a .zip file.

  • Format: Must be a .zip file.
  • Size Limit: Maximum 100MB per upload.
  • Structure: Ensure your entry file (e.g., package.json, app.py) is at the root of the zip archive, not inside a subfolder.
  • Updates: You can re-upload a new zip file to update an existing manually uploaded project. See Zip Re-Upload.

Supported Languages

We automatically detect your language and use optimized buildpacks:

Node.js
Python
Go
Rust
Java
Ruby

Project Configuration

The PORT Variable

Your application must listen on the port defined by the PORT environment variable. Inside our containers, this is always set to 8080.

Do not hardcode port 3000, 5000, etc. Your app will fail to start.

// Correct usage (Node.js)
const PORT = process.env.PORT || 8080;
app.listen(PORT, () => console.log(`Listening on ${PORT}`));

Build & Start Commands

You can customize these in the dashboard settings.

Language Default Build Command Default Start Command
Node.js npm install npm start
Python pip install -r requirements.txt python main.py
React/Static npm run build serve -s build -l 8080

Dockerfiles

For maximum control, you can switch the Build Type to "Dockerfile". If your repository contains a Dockerfile, we will use it to build your image exactly as you defined it.


Managing Deployments & Logs

  • Real-time Logs: View the live output of your application (STDOUT/STDERR) with full ANSI color support. This is critical for debugging startup errors.
  • Redeploy: Trigger a manual rebuild without pushing new code. Useful if environment variables change.
  • Environment Variables: Securely inject secrets (API keys, DB URLs). These are available to your app at runtime. You can add, edit, or remove variables from the dashboard.
  • Resource Monitoring: View real-time CPU, RAM, and bandwidth usage from the dashboard. See Resource Usage.

Live Resource Usage

Your dashboard displays real-time resource usage for all your running containers, updated every 10 seconds.

  • CPU: Aggregated CPU percentage across all your running containers, shown relative to your plan's vCPU limit.
  • Memory (RAM): Total memory consumption vs. your plan's RAM allocation.
  • Projects: Number of deployed projects vs. your plan's app limit.
  • Bandwidth: Total network usage for the current billing period.

Usage cards at the top of your dashboard change color based on consumption:

  • Indigo/Purple — Normal (0–70%)
  • Amber — Warning (70–90%)
  • Red — Critical (90%+)

Zip Re-Upload

For manually uploaded projects (not connected to GitHub), you can upload a new .zip file to update your deployment:

  1. Open your project from the dashboard.
  2. Navigate to the Settings tab.
  3. Click "Re-Upload Zip" and select your updated zip file.
  4. The platform will extract the new code, rebuild the container, and redeploy automatically.

This is useful when you don't use Git but still want to push updates to your running applications.


Web IDE

Zeeploy includes a built-in code editor powered by Monaco Editor (the same engine behind VS Code). Access it from the "Code" tab in your project view.

  • Syntax Highlighting: Full support for JavaScript, Python, HTML, CSS, JSON, and more.
  • File Browser: Navigate your project's file tree and edit any file directly.
  • Save & Redeploy: Save your changes and trigger a redeploy — all from the browser.

Terminal Access

Get direct shell access to your running containers using the built-in web terminal (powered by xterm.js).

  • Interactive Shell: Run commands directly inside your container — install packages, check logs, debug issues.
  • ANSI Color Support: Full terminal emulation with color support.
  • Access: Open the "Terminal" tab in your project view.

Note: Changes made via the terminal are ephemeral and will be lost on redeployment. Use the Web IDE or Git for persistent code changes.


Domains & URLs

Every deployment gets a .zeeploy.xyz preview URL. You can also connect a custom domain.

Connecting a Custom Domain

  1. Navigate to the "Domain" tab.
  2. Enter your domain (e.g., app.yourdomain.com).
  3. Create a CNAME record in your DNS provider pointing to the provided Zeeploy URL.

Auto-Deployment (CI/CD)

When connected to GitHub, push to your default branch to trigger a redeployment automatically.

  • We use a webhook to listen for push events.
  • You can manually configure webhooks if needed (see Dashboard).

Plans & Limits

Choose the resources that fit your scaling needs.

Free

$0/mo
  • 1 Active App
  • 256MB RAM
  • 0.1 vCPU
  • 1GB Bandwidth
  • No Custom Domains
POPULAR

Hobby

$4/mo
  • 5 Active Apps
  • 2GB RAM
  • 1.0 vCPU
  • 70GB Bandwidth
  • Custom Domains

Business

$10/mo
  • 10 Active Apps
  • 5GB RAM
  • 2.0 vCPU
  • Unlimited Bandwidth
  • Priority Support

Troubleshooting

Common Errors

App Crashes Immediately

Check the Logs tab. The most common cause is the app trying to bind to a hardcoded port (like 3000) instead of process.env.PORT.

Build Timeout (10 Minutes)

If your build takes longer than 10 minutes, it will be terminated. Optimize your npm install by pinning dependencies or remove large files.

Modules Not Found

Ensure all dependencies are listed in your package.json or requirements.txt. Do not upload your locally installed node_modules folder.


Support

Need help? Open a ticket on your dashboard or email admin@zeeploy.xyz.

Please also review our Terms & Conditions for information about acceptable use, data privacy, and platform policies.