Skip to content

Production-ready Helm chart with Kubernetes fixes #312

@khalid244

Description

@khalid244

Hey @vermorag,

Following up on #119 and your work on the .helm/ chart in PR #294 — I've built and tested a production-ready Helm chart that fixes all the known Kubernetes deployment issues.

Repo: https://github.com/khalid244/cattr-helm
Helm repo: helm repo add cattr-helm https://khalid244.github.io/cattr-helm

What it fixes

  • s6-overlay /var/run and timeout issues — emptyDir mounts + S6_CMD_WAIT_FOR_SERVICES_MAXTIME=300000
  • MySQL trigger creation fails--log-bin-trust-function-creators=1 (required for Cattr's migrations that create triggers)
  • App starts before DB is ready — init container waits for MySQL TCP
  • Cache/session write errors — ephemeral emptyDir mounts for framework cache and sessions
  • Migration conflicts — documented workarounds for redmine_instances duplicate table and Sanctum expires_at column

Improvements over current .helm/ chart

Feature Current .helm/ This chart
Service template Missing Included
PVC templates Missing Included
Ingress YAML syntax error Working, with TLS/cert-manager
APP_KEY encryptAES (non-standard) randAlphaNum + b64enc
MySQL Bitnami subchart Built-in MySQL (no external deps)
DB startup order None Init container waits for MySQL
MySQL triggers Not handled --log-bin-trust-function-creators=1
Values style Custom Bitnami-style with @param annotations

Tested on

  • 3-node Hetzner cluster (MicroK8s)
  • Longhorn storage
  • nginx-ingress + cert-manager (Let's Encrypt)
  • All s6 services start cleanly: nginx, octane, reverb, queue, supercronic
  • 144 migrations run successfully
  • Full app functional at https endpoint

Happy to submit a PR to replace or improve the existing .helm/ chart if you're interested. Let me know how you'd like to proceed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions