Highlights
Restore works when Docker is down. restore no longer needs Container Manager running, and the script never replaces binaries while Docker is still shutting down. Stop timeouts and start failures now report what's happening instead of a generic error.
iptables modules survive Container Manager updates. On DSM 7, the iptable_raw / ip6table_raw modules now load from a systemd drop-in instead of lines inserted into Synology's start-stop-status, which package updates overwrite. Existing setups are migrated automatically.
fuse-overlayfs for aufs setups (opt-in). For volumes on aufs with no kernel overlay support, which have no usable storage driver on Docker 24+, --fuse-overlayfs sets up fuse-overlayfs storage. Based on @doctorpangloss's work in AppMana's fork.
What's Changed
Container Manager handling (#88) - #110
restoreworks with Container Manager stopped or broken;updateand the other commands say how to start it instead of suggesting--force- The stop step waits out a
stoppingstate and never continues while dockerd is running, fixing a case where binaries could be replaced under a running daemon - Separate messages for stop timeouts and start failures, with the package status, whether dockerd is running, and the daemon log path
- New
startandstopcommands - README: tips for hosts with many containers, and rolling back when Docker won't start
fuse-overlayfs and systemd-loaded modules (#89) - #113
- fuse-overlayfs (opt-in):
- New
--fuse-overlayfsoption andinstall_fuse_overlayfs.sh(with--uninstall) - Refuses to run on anything but
aufs, so btrfs setups are never switched - Verifies every download against a pinned checksum
- Keeps the data path of installs made with AppMana's fork
- New
- Storage check:
update/installstop with clear advice whendockerd.jsonstill usesaufsand the target is Docker 24+, instead of leaving Docker unable to start - Module loading: on DSM 7, iptables raw modules load via a systemd drop-in; the old
insmodlines are removed fromstart-stop-status, andonly_scriptmigrates hosts already on the latest Docker
Fixes - #112
--forceandinstallnow run the iptables-module and AppArmor steps for Docker 28+/29+; previously--forceskipped both, andinstallnever installed the AppArmor profile- "Step X of Y" progress is now accurate, including with
--target, Compose-only updates, and thelocallog driver
Upgrading
git pull, then update as usual. On DSM 7, the next update (or sudo ./syno_docker_update.sh only_script) moves module loading to the systemd drop-in and cleans up the old lines. Nothing changes for btrfs setups unless you pass --fuse-overlayfs.
Thanks
Thanks to @doctorpangloss for the fuse-overlayfs work from the AppMana fork, @telnetdoogie for review and on-device testing, and @liquidguru for the detailed stop/start reports in #88.
New Contributors
- @doctorpangloss: fuse-overlayfs support, from AppMana's fork
Full Changelog: 2.9...3.0