Z
⌘K

Deploying

Project settings

Configure build settings, git source, health checks, and more

Overview

Each project has a Settings tab where you can configure how it builds and runs. Changes are saved and applied on the next deploy.

Build configuration

Build type

Choose how Zanode builds your project:

Build typeDescription
RailpacksAuto-detects your framework and builds without a Dockerfile (default)
DockerfileBuilds using a Dockerfile in your repository

Framework preset

When using Railpacks, select your framework to auto-populate the build command, start command, and output directory:

FrameworkBuild commandStart commandOutput dir
Next.jsnpm run buildnpm start.next
Astro (static)npm run buildnpm run preview -- --host 0.0.0.0 --port 3000dist
Astro (SSR)npm run buildnode ./dist/server/entry.mjsdist
SvelteKitnpm run buildnode buildbuild
Nuxtnpm run buildnpm run start.output
Remixnpm run buildnpm startbuild
Vitenpm run buildnpm run preview -- --host 0.0.0.0 --port 3000dist
Express / Node(none)node index.js(none)

You can override any of these values manually.

Build command

The shell command used to compile your app, e.g. npm run build. Leave blank if no build step is needed (e.g. a plain Node server).

Start command

The command used to run your app after building, e.g. node build or npm start.

Output directory

The directory where your build artifacts are placed, e.g. .next, dist, or build.

Root directory

If your project lives in a subdirectory of your repository (e.g. a monorepo), set the root directory to that path (e.g. /apps/web). Defaults to /.

Dockerfile builds

When Dockerfile is selected as the build type:

SettingDescription
Dockerfile pathPath to your Dockerfile relative to the context, e.g. ./Dockerfile
Build contextThe build context directory sent to Docker, defaults to .
Build stageTarget a specific multi-stage build stage (optional)
Build argsKEY=VALUE pairs passed as --build-arg (masked if previously saved as secret)
Build secretsSecrets passed as --secret id=...,src=... at build time (masked if previously saved as secret)

Build args and secrets are masked in the UI once saved. Leave the field empty to preserve the existing value on next save.

Git configuration

SettingDescription
Repository URLThe GitHub repository URL (e.g. https://github.com/org/repo)
BranchThe branch to deploy from. Defaults to main. Pushes to this branch trigger automatic deployments

Health check

The health check path is an HTTP endpoint Zanode pings to verify your app has started successfully (e.g. /health or /). Leave blank to skip health checking.

Danger zone

The Danger zone section at the bottom of Settings allows you to permanently delete the project. You must type the project name to confirm.

Deleting a project permanently removes all associated databases, environment variables, and deployment history. This cannot be undone.