Skip to main content
brimble deploy starts a deployment and follows the build until it finishes. The process exits with a non-zero status when the deployment fails, so a pipeline can rely on it.

What gets deployed

For a Git or Docker project, deploy rebuilds the latest commit of the production branch, or the current image tag. It does not upload your working tree. For a static upload project (one with no Git repository), deploy zips a folder and uploads it. The default folder is the current directory. Pass --dir to upload somewhere else, usually your build output:
--dir is only for static upload projects. On a Git project it fails and tells you the project deploys from its repository. The zip skips .git, node_modules, .brimble, VCS metadata, .DS_Store, and .env files. A single file larger than 100 MB is rejected. If the folder has a package.json and no index.html, the CLI warns you to upload build output instead.

Follow, detach, or restart

By default the CLI prints new build lines until the deployment reaches a final status, then prints the live URL when the project has one. Ctrl+C stops following. The deployment keeps running on Brimble. Check it with brimble logs list <project>. --detach -o json prints the project and deployment IDs and does not wait:

An unlinked directory

In a terminal, brimble deploy with no link and no project name asks whether to deploy an existing project or create a new one. Choosing an existing project offers to write .brimble/project.json in the current directory. In a script, pass the project name:

Create a project

In a terminal this walks through the same choices as the dashboard: GitHub, GitLab, Bitbucket, a Docker image, or a local folder uploaded as a static site. You pick the service type, repository or image, framework, region, and compute size, then the first deployment starts and the CLI follows it.
Pass --repo, --image, or --dir to create without prompts, for scripts. --git picks the provider for --repo (GitHub by default), --type the service type, and --no-deploy creates the project without starting a deployment. After an interactive create, the CLI offers to link the current directory. Build commands, start command, resources, and the rest of a project’s settings belong in brimble.toml in your repository, which Brimble applies on every deploy. If the current directory has a brimble.toml, the interactive create skips the build questions.

Redeploy, roll back, restart, cancel

redeploy rebuilds the latest commit. To change build or runtime settings, edit brimble.toml and push. See Config as code to preview a change first. rollback redeploys the commit of an earlier successful deployment. Pass a deployment ID, or pick one in a terminal. It asks before it runs. Pass -y to skip the question. restart restarts the running deployment without a rebuild. cancel stops a deployment that is still in progress. redeploy, rollback, and restart accept --detach. redeploy also accepts --no-logs.

Start and stop

stop takes the project off the public URL. It asks for confirmation unless you pass -y.

Open the site

open launches the project’s public URL in your browser. If no browser can be opened, it prints the URL. status prints project details and the five most recent deployments. See Logs for build output and live application logs.
Last modified on October 16, 2026