How should server software be configured?
Interesting results. I hate config files; I've spent too long with tetchy parsers with weird syntax and poor documentation. I much prefer environment variables. Command line and Web UI don't work for me.
@evan I feel that pain. But I can't imagine trying to configure a core service (eg, sshd, sendmail, psql) with env vars.
@penryu I spin up PostgreSQL with K8S all the time. Love it!
@evan I guess the 7 vars they make available for customization is pretty flexible, and handles the vast majority of simple cases. I guess I was thinking more about the intricacies of pg_hba or similar.
@penryu definitely. If you are doing hardcore optimization, it doesn't work. For treating PostgreSQL servers like disposable toys, it's awesome.
@evan Taken another way:
What is a pod definition but a yaml configuration file?
What is a .env file but a Bourne configuration file?
@evan The advantage to them being: you only have to know one configuration language to be able to configure any containerized service.
Whether or not yaml is a worthy victor in this arena is left to a much longer, future thread.
@penryu oh, absolutely yes. And K8S config files are horrendous. Just line after line of boilerplate and reused terms. But, I only have to know one syntax, not one per program.
@evan The difficulty of environment variables is the single-use nature - they work really well with containers where you have one application inside an environment, but they don't work so well with multiple applications where env variables can conflict