Skip to main content

Deploying an Application


Zipup Cloud provides a simple flow to create and deploy applications using the UI and the Zipup CLI. The process involves:

  1. Creating an application from the UI
  2. Retrieving the app credentials
  3. Deploying using the Zipup CLI

Creating an Application

  1. From the sidebar, select the type of application:

    • Web App
    • Static Site
  2. Click Create New from the submenu

  3. Provide an application name and click Create

  4. Define the start command for your application. This command is executed when an artifact is uploaded or app is restarted. (e.g., npm run start or node server.js).

warning

The start command is required for deployment.

note

You must run your app on ZIPUP_PORT env variable.

import { Hono } from "hono";
import { serve } from "@hono/node-server";

const app = new Hono();
const port = parseInt(process.env.ZIPUP_PORT) || 3000;

app.get("/", (c) => {
return c.text("Hello from Hono on Zipup Cloud");
});

serve({
fetch: app.fetch,
port
});

Once created, the application is ready to receive deployments.


Getting Credentials

After creating the app, you can:

  • Download the configuration file
    or
  • Copy:
    • App Key
    • Secret Key

These credentials are required to deploy your application using the Zipup CLI.


Installing Zipup CLI

Zipup CLI is the official tool used to deploy applications to Zipup Cloud.

Install it globally using npm:

npm install -g zipup-cli

Deploying with Zipup CLI Basic Command

zipup deploy --build-folder .

Configuration Methods

Zipup CLI supports three ways to provide configuration:

  1. Environment Variables (Recommended)
export ZIPUP_HOST=https://admin.zipup.dev
export ZIPUP_APP_KEY=your_app_key
export ZIPUP_SECRET_KEY=your_secret_key

zipup deploy --build-folder .
  1. CLI Flags
zipup deploy \
--host https://admin.zipup.dev \
--app-key your_app_key \
--secret-key your_secret_key \
--build-folder .
  1. Config File (zipup.config.json)

You can also define configuration in a file named zipup.config.json.

This file should be placed in the directory from which you run the CLI command.

{
"host": "https://admin.zipup.dev",
"appKey": "your_app_key",
"secretKey": "your_secret_key",
"buildFolder": ".",
"ignore": ["node_modules", ".git"]
}

What Zipup CLI Does

  • Packages your build artifact
  • Applies ignore rules
  • Signs the artifact for integrity verification
  • Uploads it to Zipup Cloud
  • Performs a health check after deployment

Persistent Storage

You will want some data to persist across deployments.

note

Use the /data directory for persistent storage. This directory is persisted across deployments.


Environment Variables and Secrets

For Web Apps only:

  • You can configure:
    • Environment Variables
    • Secrets

From the UI:

  • Go to Web Apps
  • Select your application
  • Use:
    • Env Variables tab
    • Secrets tab

More about env variables and secrets covered in this section.