Skip to content

Limitations

This page covers the limitations most relevant to distribution users. For the exhaustive technical breakdown — including what's ignored, what's silently dropped, and the full existential crisis — see Limitations on docs.dekube.io.

Key limitations

Network aliases (nerdctl)

nerdctl compose silently ignores network aliases. Without the flatten-internal-urls transform, services will fail to reach each other by K8s FQDN. Install the transform or switch to Docker Compose / Podman Compose.

Startup ordering

Init containers become separate services with restart: on-failure — they retry until they succeed, but nothing prevents the main container from starting concurrently. Expect noisy logs on first boot. Everything converges eventually.

Secrets

Kubernetes Secrets are dumped as plain-text environment variables into compose.yml. Do not commit it to version control.

CRDs

Operator-managed resources are skipped unless a loaded extension handles them. See the extension catalogue for available converters (cert-manager, Keycloak, trust-manager, ServiceMonitor).

CronJobs

Not converted. No compose equivalent.

emptyDir volumes

Not shared between init containers and the main container in compose. Map to a named volume manually if needed.

Bind mount permissions

Handled automatically by the bundled fix-permissions transform — non-root containers get a chown init service. No manual intervention needed in most cases.


For the full list, rationale, and workarounds: docs.dekube.io/limitations.