k8s have a steep learning curve comparatively. With Docker you just install the Docker package and it’s off to the races. With k8s you need to know basically how Docker works, know how the layers it adds on top work, and define everything using YAML config files to get things up and running. The networking is complicated (but flexible), the storage isn’t straightforward (it’s designed to work with large-scale solutions like S3 or Ceph, so setting it up even for local “folder” storage requires more moving parts). Even bootstrapping a new installation requires many steps to install all the pieces you need.
Don’t get me wrong it’s awesome, but if you don’t already know it, it doesn’t have many advantages for small installations over Docker which is very much “run docker-compose on this file you downloaded and the thing you want sets itself up”.
While there are tools like Helm or Portainer to assist you, you still have to understand it to make it work.
k8s have a steep learning curve comparatively. With Docker you just install the Docker package and it’s off to the races. With k8s you need to know basically how Docker works, know how the layers it adds on top work, and define everything using YAML config files to get things up and running. The networking is complicated (but flexible), the storage isn’t straightforward (it’s designed to work with large-scale solutions like S3 or Ceph, so setting it up even for local “folder” storage requires more moving parts). Even bootstrapping a new installation requires many steps to install all the pieces you need.
Don’t get me wrong it’s awesome, but if you don’t already know it, it doesn’t have many advantages for small installations over Docker which is very much “run docker-compose on this file you downloaded and the thing you want sets itself up”.
While there are tools like Helm or Portainer to assist you, you still have to understand it to make it work.