OneBitDeploy
Deploying

Builds & frameworks

How OneBit builds your app, which frameworks are supported, and how to configure the build.

OneBit builds your source into a container image. For supported frameworks this is zero-config; you can override the build when you need to.

Supported runtimes

RuntimeDetected fromWhat we runGuide
Node.jspackage.json with a start scriptnpm install, optional build, npm startDeploy a Node.js app
Next.jsnext.config.*production build, standalone serverDeploying
Python (early access)requirements.txt or pyproject.toml; Django via manage.pypip install, gunicorn on port 8000 against the detected WSGI moduleFlask / FastAPI · Django
Static sitesbuild output or a ZIP uploadserved by NginxQuickstart

Today OneBit Deploy supports Node.js, Next.js and Python (early access) apps plus static sites. Go and PHP buildpacks are not available yet — a repository that ships its own Dockerfile still builds. WordPress is offered as a separate managed option — see WordPress.

Python (early access)

app_type Python builds a python:3.11|3.12|3.13-slim image, installs requirements.txt (or pip install . for an installable pyproject.toml) and starts gunicorn on the container port (8000). The WSGI module is picked at build time — <project>.wsgi:application when manage.py is present, otherwise app:app, main:app or wsgi:app — and a start command overrides it (for example uvicorn main:app --host 0.0.0.0 --port 8000 for FastAPI). Two quickstarts use the exact repositories we run as canaries: Flask and Django.

Configuring the build

On Add app, the console says what it found before you press Deploy. To adjust it before the first deploy, open Build settings: Framework, Build command, Root directory and Port.

Once the app exists, the rest is in its Settings tab under Build settings → Edit build settings: Run a build step, Build command, Output folder, Root directory, Port, Runtime version, Package manager, Standalone mode (Next.js) and the Start command (Python). Changes apply the next time the app updates. For most Node, Next.js and Python apps the defaults work out of the box.

Build output and images

Each successful build produces a versioned container image that is what actually runs on the platform. Because builds are reproducible, redeploying the same commit produces the same result.

On this page