Deploy from Git
Connect a GitHub repo once, and every push deploys automatically. Pull requests get isolated preview URLs.
Install the GitHub App
From the dashboard, open Settings → Integrations and click Connect GitHub. You'll be redirected to GitHub to install the Dockfly App on your account or organisation. Pick which repos to grant access to — you can change this later.
Create a service
Inside a project, click Add service → Deploy from Git. Select the repo and branch. Dockfly will:
- Clone the repo and detect a Nixpacks plan (or your Dockerfile).
- Build an OCI image and push it to the internal registry.
- Roll the deploy out behind a health check.
- Stream logs and metrics back to the dashboard.
Auto-deploy on push
By default, the connected branch triggers a deploy on every push. To change this, open the service's Build settings:
# Auto-deploy on push to these branches
auto_deploy:
branches: [main, release/*]
paths:
include: ["src/**", "package.json"]
exclude: ["docs/**", "**/*.md"]Manual deploys
Disable auto-deploy and trigger from the dashboard or CLI:
$ dockfly deploy --service api --commit 7c3a9f2
✓ build queued (eta 45s)
✓ deploy live at https://api.dockfly.appPull request previews
Enable Preview deployments on a service to give every open pull request its own URL. Dockfly comments the URL on the PR, runs the build, and tears the preview down when the branch is merged or closed.
Build settings
Nixpacks
Dockfly uses Nixpacks by default. It detects 30+ languages and frameworks and builds a small, reproducible image. Most apps need no extra configuration.
Custom Dockerfile
If your repo has a Dockerfile at the root, Dockfly will use it instead. To force a path:
build:
type: dockerfile
context: ./packages/api
file: ./packages/api/DockerfileMonorepo apps
For a monorepo, set the service's root directory to the package you want to build (for example, packages/api). Dockfly only triggers deploys on changes inside that path.