github amayer1983/docksentry v2.14.2
v2.14.2 — a self-update that stops us properly, and says when it did not

latest releases: v2.17.0, v2.16.1, v2.16.0...
4 hours ago

A self-update no longer kills Docksentry halfway through shutting down

@NotRetarded's instance updated from 2.12.3 to 2.14.0, announced it cheerfully, and died with exit 137 — SIGKILL. In his words: "Nothing about the exit code 137."

Two faults, and both ours.

The helper ran a bare docker stop. No -t, so Docker's own default of ten seconds applied and then it killed us. Shutting ourselves down is not faster than shutting anything else down: the web server, the scheduler and the Discord gateway all have to come to a halt, and the Discord one deliberately waits for a command still in flight.

Every other stop in this project moved onto DOCKER_STOP_TIMEOUT in v2.8.3, after @famewolf hit exactly this on containers that were slow to die. This one was missed — the same way the rename calls were missed in that release and had to be fixed again in 2.8.4. It follows the setting now, floored at 30 seconds.

And afterwards we could not tell. The shutdown handler writes its exit marker first, on purpose, so it survives a SIGKILL — which means the marker proved a signal had arrived, not that shutting down ever finished. A killed shutdown and a clean one looked identical, so the next boot said nothing at all.

It is written a second time once every service has stopped, and the difference between those two writes is the whole answer. A run that was killed partway through now says so — in the log as well as on your notification channels, because an instance with no channels configured is exactly the one that would otherwise have no record of it.

Reproduced against a real container rather than reasoned about: docker stop -t 0, exit 137, marker done: false, message on the next boot.

BOT_LABEL is not a Telegram setting

It sat on the Connections page between "Telegram Topic ID" and "Allowed users". Seven of the nine channels use it — it prefixes every message on all of them.

@NotRetarded uses Discord, read it as a Telegram thing and never touched it, which is an entirely reasonable thing to conclude from where it was. It has its own card now, above the per-channel ones, saying what it actually does.

And a number that had gone stale

The Discord bot card advertised "/status, /update, /logs and 19 more" while there were 35 commands. Spotted in a screenshot taken for something else. A test now holds that number against the command table, because a number written into a sentence has no way of noticing that the thing it counts has moved.

Don't miss a new docksentry release

NewReleases is sending notifications on new releases.