Once you know it, Docker is so much easier operationally.
The following things are easy:
- Tweaking a container version in the composefile to upgrade or downgrade
- Entirely swapping out the underlying Linux distro without touching a line of code in existing composefiles
- Isolating all incidental data generated by the application from the user-generated data (for backup purposes)
- Infrastructure as code (so you can easily migrate between servers, and version your setup)
- Quick iteration on service set-up are all so much easier with containers. It's possible to remove services entirely too, so experimentation between different options is very easy.
A sustainable self-hosted setup is one that is quick to maintain and upgrade. If you don't do both, security issues and incompatibilities will eventually be a problem.
The following things are easy:
- Tweaking a container version in the composefile to upgrade or downgrade
- Entirely swapping out the underlying Linux distro without touching a line of code in existing composefiles
- Isolating all incidental data generated by the application from the user-generated data (for backup purposes)
- Infrastructure as code (so you can easily migrate between servers, and version your setup)
- Quick iteration on service set-up are all so much easier with containers. It's possible to remove services entirely too, so experimentation between different options is very easy.
A sustainable self-hosted setup is one that is quick to maintain and upgrade. If you don't do both, security issues and incompatibilities will eventually be a problem.