Orca ORCA v0.174.2
Documentation navigation

Containers and Orca Releases

This is the final step: getting your merged code in front of real users. Two ideas to grasp — containers (how we package code) and Orca releases (how we deploy that package).

graph LR
  Code[Merged code] --> Image[Container image]
  Image --> Orca[Orca release]
  Orca --> K8s[Live on Kubernetes]

What a container is

A container is like a sealed lunchbox: it contains your code plus everything it needs to run (the right version of Python, the right libraries, the right config), so it behaves identically on a laptop, in CI, and on the live server.

The technology behind containers is called Docker. You don't need to learn Docker to use it — the CI workflow builds the container for you.

Where container images live

Once CI builds your image, it's pushed to a container registry — a private warehouse of images, tagged with the version of your code. At Corti, that registry is corti.azurecr.io. You won't usually visit it directly; Orca pulls images from it on your behalf.

What Kubernetes is (in two sentences)

Kubernetes is the system that runs containers in production. It decides which server runs your container, restarts it if it crashes, and scales it up when traffic increases. You won't touch it directly — Orca does that for you.

What Orca does

Orca is the tool we use to release new versions of services. In short:

  • It takes a built container image and rolls it out to an environment (e.g. dev, staging, prod).
  • It moves changes through environments in order, so problems get caught early.
  • It pauses for approval before touching production.
  • Every release is tracked and reversible.
graph LR
  Dev[Dev] --> Staging[Staging]
  Staging --> Prod[Production]

Your part in a release

  1. Open the Orca UI (or run orca release create).
  2. Pick your service and the version you want to release.
  3. Approve the release as it moves through environments.
  4. Watch the status — green means it's live.

When something goes wrong

Releases can be cancelled mid-flight or rolled back to the previous version. Always ask for help before panicking — production incidents are a team sport, and shouting "I broke it" in the right Slack channel is the fastest way to get unstuck.