Files
restic-backup-docker/CHANGELOG.md
T
Tobias KaupatandClaude Opus 5.5 e5b12da948 fix: set script modes in the image independent of the build umask (#113)
COPY --chmod=755 for backup.sh, check.sh and entry.sh so the image no longer depends on the build host's umask; exact structure permission checks stay. README notes the BuildKit requirement.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 00:33:41 +02:00

2.4 KiB

Changelog

Unreleased

Added

  • Test suites in tests/ (compat, features, structure) that run the image as a real container, plus a Test GitHub Actions workflow running them on every pull request. The suites are written in Python (pytest) and run via mise install and task test; task test:sabotage proves they detect a broken backup
  • .gitattributes pinning shell scripts, the Dockerfile and YAML files to LF line endings. With a Windows checkout (core.autocrlf=true) the scripts were checked out with CRLF, which made the built image fail to start with exec /entry.sh: no such file or directory

Changed

  • The Dockerfile now sets the mode of backup, check and entry.sh itself (COPY --chmod=755), so the image no longer depends on the build host's umask or on the exec bit of the checked-out scripts. BuildKit is required as before (default since Docker 23)

Removed

  • config-broken.yml and docker-compose.test.broken.yml, replaced by tests/structure.yml and the test workflow

v1.4.2

Removed

  • Execute a repository check after prune was passed as a parameter in the forget call - use RESTIC_CHECK_CRON Var instead

v1.4.1

Changed

  • Execute a repository check after prune was passed as a parameter in the forget call

v1.4.0

Added

  • Option to set the target folder backup
  • Multi-platform image build

v1.3.2 (restic 0.16.0)

Changed

  • Base image directly on official restic image
  • Semver aligned version naming including restic version
  • Updated to restic 0.16.0

Added

  • rclone to docker image
  • Implemented a simple mail notification after backups using mailx
  • MAILX_ARGS environment variable

v1.3.1-0.9.6

Changed

  • Update to Restic v0.9.5
  • Reduced the number of layers in the Docker image

Fixed

  • Check if a repo already exists works now for all repository types

Added

  • shh added to container
  • fuse added to container
  • support to send mails using external SMTP server after backups

v1.2-0.9.4

Added

  • AWS Support

v1.1

Fixed

  • --prune must be passed to RESTIC_FORGET_ARGS to execute prune after forget.

Changed

  • Switch to base Docker container to golang:1.7-alpine to support latest restic build.

v1.0

Initial release.

The container has proper logs now and was running for over a month in production. There are still some features missing. Sticking to semantic versioning we do not expect any breaking changes in the 1.x releases.