ShipLog
Plugin from Junker der Provinz
Overview
Readme
View on GitHub
Build Lint Docker Pulls Image Size Arch Unraid License: AGPL-3.0
⚓ ShipLog reads the changelog before you update, right inside Unraid's native Docker tab. Next to each container it shows what actually changes between your running image and the newest: the release notes, a deterministic risk badge (patch / minor / major) and the real version jump (e.g. 1.7 → 1.8).
Read-only: it never pulls, recreates or stops anything. Optional: AI changelog summaries from a local Ollama or llama-swap, and notifications through Matrix or Apprise.
A one-knight job: I build it, keep it running, work through the issues and add what people ask for, until nothing is missing. It is free, with no accounts, no telemetry, no ads and no paid tier. No asterisk anywhere. Nothing readable ever leaves your own walls. Forged on evenings and weekends, with heart and stubbornness.
If it has earned a place on your server or computer, toss a coin to your knight: it helps cover the costs and keeps the project alive. It also makes this knight's heart beat a little faster. Three ways below, whichever suits you.
The containers in these pictures run public images at older versions in a test sandbox; the release notes are the real ones.
The changelog window opens from the chip ShipLog adds to every container in the Docker tab
The engine's status page on port 8484, the same data without Unraid
- What changed, not just "update available". A Changelog chip sits on every container in the Docker tab. Its window shows the release notes between your running tag and the newest, with the real version jump.
- A risk badge you can trust. Patch is low, minor medium, major high. A release note in the span that flags a breaking change, such as a required migration, raises it to critical and sends an alert.
- Only real updates. The image behind the container's own tag decides whether there is an update, not the highest version tag in the registry, which is often an old date tag or another channel. A container pinned to a version gets a hint when a newer one exists, never an update it cannot pull.
- Honest when it does not know. If no changelog can be found, it says so and shows what it does know. Digest-pinned and locally built images are labelled as such instead of showing a bogus update.
- Fix a wrong changelog source. Point any image at the right GitHub repository or at a changelog file such as
CHANGELOG.md; the choice survives container recreation. - Warns about dead ends. An app pulled from Community Applications, an image gone from its registry or an archived source repository replaces the chip with a red badge. An app Community Applications only hides from its default search gets an amber one. Both Community Applications verdicts go only to apps that came from there, never to your own images and templates.
- Updates through Unraid. An Update all button and an optional scheduled auto-update, limited to the level you choose, hand the work to Unraid's own update. ShipLog skips a container that already runs the newest image and checks afterwards that the new image really runs. Containers you update by hand can be left out of the auto-update one by one, in the settings or from the switch in their changelog window. The engine itself never writes to the Docker socket.
- Optional extras, off by default. Changelog summaries from a local Ollama or any OpenAI-compatible server such as llama-swap, and messages through Matrix, Apprise or Unraid's own notifications.
- 26 languages, following Unraid's own setting.
On Unraid, install ShipLog from Community Applications. It is a plugin, not a container. You can also paste this address under Plugins → Install Plugin:
https://raw.githubusercontent.com/junkerderprovinz/shiplog/main/plugin/shiplog.plg
The chips appear in the Docker tab after the first check. The settings are under Settings → ShipLog, where a GitHub token raises the rate limit for release notes and the auto-update is switched on.
Running your own images or templates? docs/own-apps-checklist.md lists what to set so that both Unraid's update column and ShipLog stay right.
On any other Docker host the engine runs on its own and serves the status page, without the Docker tab and without updates:
docker run -d --name shiplog -p 8484:8484 \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-v /path/to/config:/config \
junkerderprovinz/shiplog:latest
The status page has no login, so keep port 8484 inside your network.
Notifications
ShipLog can tell you when it first sees an update. An update that auto-update will apply shows up in the run's summary instead, unless it is critical, because breaking notes may ask you to do something before the pull. Under Settings → ShipLog → Notifications you pick the channels: Unraid's own notifications, which reach every agent you set up there, a Matrix room, or an Apprise API server.
For Apprise, save your services in Apprise API under a key of your choosing and enter the notify address with that key, for example http://192.168.1.10:8000/notify/shiplog. Apprise passes each message on to all of them, be it Discord, ntfy, Gotify, Telegram or email. Send test message tries the address right away, so you know it works before the first update comes in. ShipLog keeps the key out of its log and names only the server.
Without Unraid, set APPRISE_URL on the container, or MATRIX_HOMESERVER, MATRIX_TOKEN and MATRIX_ROOM for Matrix.
One knight builds this, and AI is one of the tools I work with, the same way I work with an editor or a compiler. It helps me write code and documentation and it checks my work, and that saves me a good many evenings. It does not make the decisions, though. I read and understand everything before it ships, and if something here breaks, that is on me and not on the tool.
You do not have to take my word for it. The code is open and every release note is written by hand. The issue tracker shows how problems actually get handled, including the ones I got wrong the first time. If you find something that is not right, open an issue and I will look at it.
Questions? Check the support thread. Bugs, ideas or feature requests? Please open a GitHub issue.
ShipLog is licensed under the AGPL-3.0, which covers the code only: the name "ShipLog" and its logo are reserved, so a fork needs its own name and branding.
Categories
Download Statistics
Downloads by Month
Related apps
Explore more like this
Explore allLinks
Details
https://raw.githubusercontent.com/junkerderprovinz/shiplog/main/plugin/shiplog.plg