# Deploy Hono

Hono is detected from your `package.json` and runs as a Node.js container on port `3000`, via its Node adapter. No Dockerfile needed - one is [generated](/platform/deployments/builds#dockerfiles-generated-or-your-own) on Node 22.

## Serve it

Use `@hono/node-server` and the routed [port](/create/build-settings#port):

```ts
import { serve } from '@hono/node-server';
import { Hono } from 'hono';

const app = new Hono();
app.get('/', c => c.text('up'));

serve({ fetch: app.fetch, port: Number(process.env.PORT) || 3000 });
```

The adapter binds all interfaces - nothing else to configure.

## Configuration and database

Read [environment variables](/platform/environment-variables#build-time-and-runtime) from `process.env` at startup. Set `DATABASE_URL` from the [Credentials tab](/platform/databases/connect) for your driver or ORM.

## Scaling

Hono starts fast, which keeps [cold starts](/create/scaling#cold-starts) cheap - a good fit for [scale to zero](/create/scaling#min-instances) everywhere, previews and production alike.

## Related

- [Connect an app](/platform/databases/connect): DATABASE_URL, TLS, per-environment databases.
- [Builds](/platform/deployments/builds): The generated Node image, step by step.
- [Scaling](/create/scaling): Instances, concurrency, CPU target.
