Docker Optimization & MSSQL Improvements
🐛 Bug Fixes
- MSSQL: Backup and restore errors now show the actual SQL Server cause instead of only "terminating abnormally" by extracting preceding error messages
- MSSQL: Database Explorer now correctly shows table counts by querying each database individually instead of using a broken cross-database
INFORMATION_SCHEMAsubquery
🎨 Improvements
- Dockerfile: Global Prisma install switched from
npmtopnpmfor consistency and smaller image size - Dockerfile: corepack activated in the base stage so all build stages inherit pnpm without reinstalling
- Dockerfile: Build now uses
pnpm run buildandpnpm prisma generateconsistently instead ofnpm/npx - Dockerfile: Combined base-stage RUN layers (corepack + PG symlinks), added
COPY --linkfor layer-independent caching, merged runner RUN layers, and added pnpm store mount-cache for faster dependency installs - Dockerfile:
.dockerignoreextended to excludewiki/,api-docs/,README.md, andLICENSEto reduce build context size
🛠 CI/CD
- pipeline: GitHub Releases are now auto-generated from
wiki/changelog.mdon every version tag push — no manual copy-paste required - pipeline: Removed QEMU from Docker builds — amd64 and arm64 now build natively on their respective GitHub runners
- pipeline: Switched Docker layer cache from GHCR registry to GitHub Actions cache for faster cache hits
- Dockerfile: Fixed ARM64 build failure (
invalid user index: -1) by using numeric UID/GID (1001:1001) instead of user/group names inCOPY --link --chowndirectives
📝 Documentation
- wiki: New user guide article — Encryption Key: explains what
ENCRYPTION_KEYprotects, what happens when the key is lost or mismatched, and recovery options
🐳 Docker
- Image:
skyfay/dbackup:v1.0.3 - Also tagged as:
latest,v1 - Platforms: linux/amd64, linux/arm64