The basic idea is, I want to replace the use of docker and docker-compose, with a minimal kubernetes setup using k3s.
Kubernetes, and specifically k3s has the following advantages:
no docker or docker-compose dependencies. This simplifies server setup. This also reduces memory footprint since we no longer need a docker daemon.
simpler install process. Instead of having to configure both docker and docker-compose, k3s can be setup quickly with a single command
Kubernetes has proper concepts of Deployments and rollingUpdate strategy, and container health checks. This allows kubernetes to monitor the state of the adblock container, force a restart on container malfunctions, and also perform rolling update with zero downtime.
I'm also looking to use keel.sh. This will watch our upstream adblock-dns docker image for new versions, and perform auto apply of the deployments. This allows me to push new images for for our adblock dns, and the servers would auto-update. Combined with zero-downtime update above, it allows for seamless update process.
This also allows me to trigger regular weekly image updates, to keep the adblock up to date as much as possible.
The basic idea is, I want to replace the use of
docker
anddocker-compose
, with a minimal kubernetes setup using k3s.Kubernetes, and specifically k3s has the following advantages:
docker
ordocker-compose
dependencies. This simplifies server setup. This also reduces memory footprint since we no longer need adocker
daemon.docker
anddocker-compose
, k3s can be setup quickly with a single commandDeployments
androllingUpdate
strategy, and container health checks. This allows kubernetes to monitor the state of the adblock container, force a restart on container malfunctions, and also perform rolling update with zero downtime.I'm also looking to use
keel.sh
. This will watch our upstream adblock-dns docker image for new versions, and perform auto apply of the deployments. This allows me to push new images for for our adblock dns, and the servers would auto-update. Combined with zero-downtime update above, it allows for seamless update process. This also allows me to trigger regular weekly image updates, to keep the adblock up to date as much as possible.Successfully merging this and deploying to our servers will fix ~https://github.com/ragibkl/adblock-dns-server/issues/58~