Docker Service
Deploy pre-built Docker images for databases, caches, and other infrastructure components.
The docker Service deploys a pre-built Docker image. Lifecycle does not build
source for this Service type.
The examples use AWS-style cloud-secret
references. Replace them with a provider and path from
your Lifecycle operator. Do not commit passwords to lifecycle.yaml.
Examples
PostgreSQL database (internal only):
For other Services:
Field reference
Required fields
| Field | Type | Description |
|---|---|---|
dockerImage | string | Docker image name, for example, postgres or redis |
defaultTag | string | Image tag, for example, 15-alpine or 7-alpine |
Optional fields
| Field | Type | Description |
|---|---|---|
command | string | Override container entrypoint |
arguments | string | Arguments passed to the command. Use %%SPLIT%% for spaces |
env | object | Environment variables |
ports | array | Exposed container ports |
deployment | object | Deployment configuration. See the Deployment options section. |
envLens | boolean | Enable the Environment Lens ingress banner |
Deployment options
The deployment section configures how Lifecycle deploys the Service to
Kubernetes. All fields are optional.
See GitHub Service deployment options for information about each field.
| Field | Description |
|---|---|
public | true = creates ingress, false = internal only |
capacityType | Node type: SPOT (default) or ON_DEMAND |
resource | CPU and memory requests/limits |
readiness | Health check using httpGet or tcpSocketPort |
hostnames | Custom hostname configuration. Lifecycle generates hostnames if omitted |
network | IP whitelist, port mapping, gRPC support |
serviceDisks | Persistent volume mounts |
public: false keeps a database or cache internal to the cluster.
For a database or cache that needs only cluster access, set public: false.
Use SPOT or ON_DEMAND. Other spellings can prevent workload scheduling.