# Container image

A step of the [Cloud application](https://gradus.kazet.blog/tree/cloud-application) tree on Gradus, in the Environment setup area: First commit to first deploy.

Page: https://gradus.kazet.blog/tree/cloud-application/step/container-image

Write a multi-stage Dockerfile and .dockerignore so the service builds into a small, reproducible image, and build it in CI.

Usually comes after: [Continuous integration](https://gradus.kazet.blog/tree/cloud-application/step/ci-pipeline).

Leads to: [Choose where to run](https://gradus.kazet.blog/tree/cloud-application/step/choose-cloud).

## Prompt for your AI assistant

```
Write a multi-stage Dockerfile for this project that produces a minimal production image, plus a .dockerignore. Verify the image builds and runs locally, then add an image build to the CI workflow.
```

Every step of the tree: https://gradus.kazet.blog/tree/cloud-application/llms.txt
