Use compose-go https://github.com/compose-spec/compose-go to make Katenary parsing compose file the official way. Add labels: - `volume-from` (with `same-pod`) to avoid volume repetition - `ignore` to ignore a service - `mapenv` (replaces the `env-to-service`) to map environment to helm variable (as a template string) - `secret-vars` declares variables as secret values More: - Now, environment (as secret vars) are set in values.yaml - Ingress has got annotations in values.yaml - Probes (liveness probe) are improved - fixed code to optimize - many others fixes about path, bad volume check, refactorisation, tests...
Example with Ghost
Ghost is a simple but powerfull blog engine. It is very nice to test some behaviors with Docker or Podman.
The given docker-compose.yaml
file here declares a stand-alone blog service. To help using it, we use Patwae reverse-proxy to listend http://ghost.example.localhost
The problem to solve is that the url
environment variable correspond to the Ingress host when we will convert it to Helm Chart. So, we use the mapenv
label to declare that url
is actually {{ .Values.blog.ingress.host }}
value.
Note that we also ignore
pathwae because we don't need it in our Helm Chart.