# Do I need Docker, Kubernetes or YAML to deploy?

URL: https://antideploy.com/blog/do-i-need-docker-kubernetes-or-yaml-to-deploy

For one app on Antideploy you need none of them. Here is what each one is, and the few times a Dockerfile helps.

## At a glance

- **Docker**: A box that holds your app and what it needs
- **Kubernetes**: A system for running many boxes on many machines
- **YAML**: A format for configuration files
- **On Antideploy**: You need none of them

Published 7 October 2026. Facts checked 7 October 2026. 3 min read.

## The short answer

No. To deploy one app on Antideploy you do not need Docker, Kubernetes or YAML. Antideploy reads your project, works out how to build and start it, and does the packaging itself. You can add a Dockerfile if you want exact control, and then Antideploy uses it.

## What each one is

- **Docker** packs an app and everything it needs into one sealed unit called a container, so it runs the same everywhere.
- **A Dockerfile** is the recipe for that container. It lists the steps to build it.
- **Kubernetes** runs and manages many containers across many machines. It is built for teams that run many services at large scale. One app does not need it.
- **YAML** is a file format for settings. Kubernetes, GitHub Actions and many hosts use YAML files to describe what to run.

## What happens on Antideploy instead

Antideploy reads your files and builds the container for you, using standard buildpacks. It works out the language and version, the install and build commands, the start command and the port. It tells you what it found and which file each answer came from.

You write no recipe and no YAML. If your project has a `Procfile` with a `web:` line, that line is used as the start command. That is one line, and it is optional.

## When a Dockerfile is worth writing

- Your app needs a system program that is not a package, such as `ffmpeg` or an image library
- Your project is PHP, which runs only through a Dockerfile
- You need an exact language version or build steps that the automatic build does not guess
- You already have a Dockerfile that works and want it used as it is

If there is a Dockerfile at the root of your project, Antideploy builds with it. Its own start command is used, and the port it declares with `EXPOSE` is the one Antideploy sends traffic to. Read [how to deploy with your own Dockerfile](https://antideploy.com/blog/how-to-deploy-a-docker-app-with-your-own-dockerfile) for the details and the limits.

## Here's where it stops.

A platform that only tells you what it is good at is one you find the edges of in production. These are the ones to know before your first deploy.

### A Dockerfile has an age gate

A custom Dockerfile builds from the first deploy for accounts signed in with GitHub or Google and on any paid plan. An account made with only an email address waits 7 days.

## Docker questions, answered.

Anything else? Write to us and a person answers.

[support@antideploy.com](mailto:support@antideploy.com)

### Is a Dockerfile better than letting Antideploy build it?

Not by default. The automatic build covers Node, Python, Go, Ruby, Java and static sites with nothing to maintain. A Dockerfile gives you control, and you keep it up to date yourself.

### Do I need Kubernetes for a small app?

No. Kubernetes is for running many services across many machines. One app, even a busy one, does not need it, and Antideploy runs the app without you touching it.

### Will Antideploy use my Dockerfile?

Yes, when it is at the root of your project. It is used from the first deploy for accounts signed in with GitHub or Google and on any paid plan. An account made with only an email address waits 7 days.

### What if my Dockerfile fails to build?

The deploy says which step failed and with what exit code. One known limit is that the builder does not support `RUN --mount`. Removing the `--mount=type=cache` lines builds immediately.

### Is there more reading?

Yes. The docs have a guide on [deploying without a Dockerfile](https://antideploy.com/docs/guides/deploy-without-a-dockerfile) and one on [whether you need Kubernetes](https://antideploy.com/docs/guides/do-i-need-kubernetes).

## More guides, and the platform.

Each platform page covers one part of Antideploy: what it does, where it stops and the questions people ask. [See the whole platform](https://antideploy.com/platform), or [all the guides](https://antideploy.com/blog).

- [How to deploy a Docker app with your own Dockerfile](https://antideploy.com/blog/how-to-deploy-a-docker-app-with-your-own-dockerfile): Where the Dockerfile must be, how the port is read, the account rule and the RUN --mount limit.
- [What does deploying an app mean?](https://antideploy.com/blog/what-does-deploying-an-app-mean): Deploying, in plain words. The ten words you will meet, and what each one means.
- [How Antideploy works, from one sentence to a live link](https://antideploy.com/blog/how-antideploy-works): What happens between your agent's first request and your live link, step by step.

- [Hosting](https://antideploy.com/platform/hosting)
- [Deployments](https://antideploy.com/platform/deployments)

Facts on this page were checked against the live platform on 7 October 2026.

## Deploy something. Start with one sentence.

Paste one sentence into your coding agent, click Approve once, and get a live link. No card, no trial clock.

To set this up, give your coding agent this sentence:

```text
Set this project up to deploy on Antideploy. Fetch https://antideploy.com/agent.md and follow it.
```
