We (Temporal) are planning to retire one of the docker images we are currently publishing (temporalio/auto-setup), and we are interested in your feedback.
This docker image is the same as temporalio/server + it sets up persistence schemas. This auto-setup functionality can also be achieved by running temporalio/server and setting AUTO_SETUP=true environment variable.
In fact, this is exactly how we build temporalio/auto-setup docker image:
And here is how Temporal’s own docker-compose files invoke auto-setup functionality:
To reduce this duplication and unnecessary complexity, both for our users and for Temporal, we are planning to retire the redundant image, temporalio/auto-setup.
I’d assume that a production image would only contain what’s necessary to run the application in production and I shouldn’t be able to accidentally turn it into “dev” mode. I can set policies for denying the deployment of the auto-setup image, I can’t set policies for env vars.
This is why I originally introduced the auto-setup image in Cadence and that’s why it’s a Nay from me.
Could you please consider providing much smaller image that is designed just to setup the DB schema only for use as init container? I don’t like the idea of every pod checking and eventually updating the schema, in which case it starts slower than usual.