0.33.0: NFS share as backup destination
New destination type 'nfs' alongside SFTP and S3. The StackPilot container needs no mount privileges: the Docker daemon mounts the export as a named volume (stackpilot-nfs-dest-<id>, driver local/type nfs, recreated whenever server/path/options change) and all file I/O runs through throwaway helper containers (BACKUP_HELPER_IMAGE) — upload via put_archive, list via stat, download via get_archive, delete/test via short-lived runs. Config: server, export path, mount options (default rw), optional subdirectory (sanitized; shell-safe charset). Mount failures surface as clean destination errors. Settings UI gains the NFS form + summary; works everywhere destinations are used (push, restore-from, scheduled backups incl. retention). Verified live against a real kernel NFS server: test, push (file on the export), list, restore-from incl. volume data, remote delete, config change recreates the mount volume, unreachable server fails cleanly. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
79d82361d8
commit
786c346c40
@@ -108,9 +108,12 @@ as intuitive as Dockge, as capable as Portainer for Compose workflows.
|
||||
|
||||
### Phase 6 — Backup destinations
|
||||
|
||||
- **Off-box backups**: define **SFTP** or **S3-compatible** (MinIO, Backblaze B2,
|
||||
AWS S3, …) destinations under **Settings → Backup destinations** (with a Test
|
||||
button; secrets are masked in API responses).
|
||||
- **Off-box backups**: define **SFTP**, **S3-compatible** (MinIO, Backblaze B2,
|
||||
AWS S3, …) or **NFS share** (0.33.0) destinations under **Settings → Backup
|
||||
destinations** (with a Test button; secrets are masked in API responses).
|
||||
NFS needs no privileges in the StackPilot container: the Docker daemon mounts
|
||||
the export as a named volume (`stackpilot-nfs-dest-<id>`, recreated when the
|
||||
config changes) and file I/O runs through throwaway helper containers.
|
||||
- **Push & restore**: the stack Backup dialog can push straight to a destination
|
||||
instead of downloading; the Restore dialog can browse a destination's backups
|
||||
and restore (volumes included) directly from it. Remote backups can also be
|
||||
|
||||
Reference in New Issue
Block a user