4 ms·
Why wouldn't you be better served by an adapted version of a configuration management toolchain like Puppet, Chef, or Ansible? This would give you the semantic
by mattzito 11y ago
Why wouldn't you be better served by an adapted version of a configuration management toolchain like Puppet, Chef, or Ansible?
This would give you the semantic representation you're looking for, idempotency, and a prebuilt library of reusable components that you could leverage going forward.
In addition, it could also handle the case where you have a long-running process in a container and suddenly there's a critical severity bug that you need to patch.
- jbeda 11y agoI think this is really orthogonal. Puppet/Chef/Ansible/Salt all help to configure an environment and work with the native package manager for the OS. What I'm suggesting here is to instead create a new package manager that is native to the container world and is used at build time. There is still a need for an improved tool set to build the containers and use this package manager. Perhaps these tools could expand into that area. As for long-running processes -- I'd consider that an anti-pattern. If there is a critical bug, the correct thing to do would be to build a new (versioned) image and restart (either blue/green or a rolling update) to that new image. This also enables rollback if your fix breaks things further.