Production-grade containerisation

Your repo, ready
to ship in Docker.
No config needed.

Paste a Git URL. Get a Dockerfile, .dockerignore, and Compose file — with a confidence score telling you exactly how much to trust the output.

docker-forge — bash

Three steps.
No surprises.

01
Paste your repo URL
Works with any public GitHub, GitLab, or Bitbucket repo.
Private repos supported with a PAT — no install required.
02
We analyse your stack
We detect what your project uses and how it runs.
Node.js, Python, .NET — monorepos and multi-service projects included.
03
Get production-ready files
Download your Dockerfile, .dockerignore, and Compose file.
Multi-stage builds, pinned base images, non-root user, layer caching — applied automatically.

Four files.
Production-ready.

Dockerfile
Multi-stage build with pinned base image and non-root user.
# Stage 1: Build FROM node:20-alpine AS builder RUN npm ci # Stage 2: Runtime FROM node:20-alpine COPY --from=builder /app/dist ./dist
.dockerignore
Explicit exclusions so secrets never reach the build context.
node_modules .env .env.* !.env.example *.md dist coverage
docker-compose.yml
Full stack definition with auto-detected infrastructure.
services: app: build: . db: image: postgres:16-alpine
Readiness Report
Confidence score, assumptions, warnings — all visible before you ship.
Confidence: Medium (0.74) Reason: start command uncertain ⚠ verify COPY src/ covers your app directories

What we generate.
Why that matters.

What it generates
  • Multi-stage builds that separate build and runtime
  • Pinned base images — no floating :latest
  • Non-root user in every generated image
  • Explicit COPY — never COPY . .
  • Confidence score with label and reason
Why that matters
  • Smaller images mean faster deploys and lower hosting costs
  • A deploy next month behaves the same as today
  • A container escape doesn't hand an attacker root
  • No secrets leak into the build context
  • You know what to verify before shipping — it doesn't pretend to be perfect
We tell you how sure we are.

Every generation returns a confidence score from 0 to 1, labelled so you don't have to guess:

High 0.9–1.0 Medium 0.7–0.89 Low 0.4–0.69 Unsupported <0.4

A lower score means a missing lockfile, uncertain entrypoint, or low source-copy confidence. Rather than hiding this, we surface it — so you know exactly what to verify before you ship. GitHub PR creation is enabled by default at ≥ 0.7. Below that, we ask for explicit confirmation.

Full confidence rubric →