Build and run Python applications on Kubernetes with Wodby.
This repository defines the Wodby service manifests and operational configuration for Python.
Use one of the boilerplates exposed by this service to start with compatible build configuration and Wodby CI:
| Property | Manifest configuration |
|---|---|
| Service name | python |
| Type | Application service |
| Versions | 3.14 by default; also available: 3.13, 3.12, 3.11, 3.10 |
| Workloads | main (Deployment, primary) |
| Containers | python using wodby/python, build target |
| Endpoints | python: HTTP 8080 (main) |
| Service links | DBMS (db), optional; Mail Transfer Agent (sendmail), optional; Redis (redis), optional |
| Application build | Git source connection enabled; Dockerfile: Dockerfile; boilerplates: Python boilerplate |
| Helm | chart oci://registry-1.docker.io/wodby/python; version 0.2.2 |
| Configuration and operations | 1 integration slots |
Use this service through Python application stack, or reference python from a
custom Wodby stack.
A service is a reusable component and does not deploy by itself. The stack defines its links, settings, versions, resources, and relationship to the rest of the application.
- Fork this repository.
- Edit the service manifest and referenced files.
- Import the repository as a Git-backed service.
- Reference the service from a stack manifest.
Keep service, workload, container, endpoint, link, volume, config, and derivative names stable unless dependent stacks and app-level overrides are updated at the same time.
Validate the manifests with:
wodby service validate-manifest service.yml --org <org-id>See the service manifest reference and the managed services index.
workspace-python prepare runs uv sync --locked when uv.lock exists, or installs
requirements.txt into a virtual environment. workspace-python start activates it
and runs Gunicorn with its polling reloader against GUNICORN_APP. Override
WORKSPACE_PYTHON_COMMAND for another server; HOST and PORT default to
0.0.0.0 and 8080. Uvicorn commands receive WATCHFILES_FORCE_POLLING=true unless
explicitly configured otherwise. Custom commands must implement their own reload
behavior. Dependency changes require preparation again.
Requires a runtime image declaring workspace contract version 1. Ordinary and development option tags must use matching revisions.