This feature adds the capability to stop unregistered running instances upon startup.
Previously, you had to stop running instances manually or issue an initial request that will shut down instances afterwards.
With this change, all discovered instances will be shutdown. They need to be registered using labels. E.g.: sablier.enable=true
Fixes#153
* refactor: remove unused default timeout
* feat: add persistent storage
Allows you to save the state to a file and load it upon restarting the app to restore the previous state.
* chore: upgrade to go 1.18
* use tinykv with generics
* build: add "-buildvcs=false" flag
Git is not available in golang:1.18-alpine image
Docker classic IsUp will return false when the container defines a healthcheck and is not healthy, otherwise as soon as it's started it's up.
Docker swarm will check that the number of required tasks is higher than 1, and that the number of running tasks matches the number of desired tasks.
A task is not running when it defines a healthcheck and is not healthy.