Files
yucca/USER_MANUAL.md

2.5 KiB

FUTO Backups Manual

On your homelab

Using the standalone Docker container

Note

The user interface for the standalone app is unpolished and may have some rough edges.

Note

This app does not require authentication until FUTO Backups account is connected. After which, you can only use the environment flag YUCCA_DISABLE_AUTH=true to disable it.

Run using Docker:

docker run -d --name futo-backups \
  --restart always \
  -p 127.0.0.1:22676:22676 \
  -v "$HOME/.yucca:/data" \
  -v /my/important/data:/target/important-data:ro \
  ghcr.io/immich-app/futo-backups-standalone:v0

Then head to http://localhost:22676.

Note

Use -v futo-backups-data:/data instead if you want a named volume.

Note

If you wish to also restore files, remove the :ro annotation.

Note

If you'd like to configure local backups/backend, add additional volumes: -v /mnt/my-external-drive:/backends/my-local-destination

Or create a compose file:

# compose.yml
name: futo-backups

services:
  backups:
    image: ghcr.io/immich-app/futo-backups-standalone:v0
    ports:
      - 127.0.0.1:22676:22676
    volumes:
      - data:/data
      # add additional mounts for the data you want to backup
      - /my/important/data:/target/important-data:ro
    restart: always

volumes:
  data:
    name: futo-backups-data

Then run:

docker compose pull
docker compose up -d
# run both again to update

Using in Immich

You can currently use the feature branch directly by using the following version in your Immich deployment:

# .env
IMMICH_VERSION=pr-27817

Then run:

docker compose pull
docker compose up -d
# run both again to update

Caution

This will bump you to the latest† main/development version of Immich.

† Or at least, generally quite recent.

Using with restic

Caution

This is experimental.

Caution

This is intentionally left uncomplete, as the token side of things is still being worked on.

# compose.yml
name: futo-backups-proxy

services:
  restic-proxy:
    image: ghcr.io/immich-app/futo-backups-restic-proxy:v0
    ports:
      - 127.0.0.1:1434:1434
    restart: always

And then point restic at it:

# parameters subject to change
restic -r rest:http://<REPOSITORY>:<SESSION TOKEN>@127.0.0.1:1434 init