Zerobyte Installation Guide for Ubuntu 24.04

Zerobyte is a self-hosted backup automation platform built on top of Restic.
It allows you to create encrypted, scheduled backups with a web interface.

Requirements

  • Ubuntu 24.04 VPS / Server
  • Root or sudo access
  • Minimum 1 GB RAM recommended
  • Open port: 4096

Update System

apt update && apt upgrade -y

Install Docker

apt install -y ca-certificates curl gnupg lsb-release

mkdir -p /etc/apt/keyrings

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg

echo \
  "deb [arch=$(dpkg --print-architecture) \
  signed-by=/etc/apt/keyrings/docker.gpg] \
  https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null

apt update
apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

systemctl enable docker
systemctl start docker

Verify:

docker --version
docker compose version

Output :

Docker version 29.4.0, build 9d7ad9f
Docker Compose version v5.1.3

Create Zerobyte Directory

mkdir -p /opt/zerobyte
cd /opt/zerobyte

Create docker-compose.yml

nano docker-compose.yml

Paste:

services:
  zerobyte:
    image: ghcr.io/nicotsx/zerobyte:latest
    container_name: zerobyte
    restart: unless-stopped
    cap_add:
      - SYS_ADMIN
    ports:
      - "4096:4096"
    devices:
      - /dev/fuse:/dev/fuse
    environment:
      - TZ=Asia/Kolkata
      - BASE_URL=http://localhost:4096
      - APP_SECRET=change_this_to_random_string
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /var/lib/zerobyte:/var/lib/zerobyte

⚠️ Important:

  • Do NOT store /var/lib/zerobyte on network storage (causes issues)
  • Replace APP_SECRET with a strong random string

Disable Firewall:

ufw allow 4096/tcp
ufw reload

Start Zerobyte

docker compose up -d

Check status:

docker ps

Access Web Interface

Open in browser:

http://YOUR_SERVER_IP:4096

Add First Volume

  • Go to Volumes
  • Click Create Volume
  • Choose:
    • Local Directory
    • NFS / SMB / WebDAV

If using local directory, mount it in docker:

- /backup-data:/mydata

Then restart:

docker compose down
docker compose up -d

Create Repository

A repository stores your backups.

Supported:

  • Local storage
  • S3 (AWS, Wasabi, etc.)
  • Google Cloud
  • Azure
  • rclone (40+ providers)

Steps:

  • Go to Repositories
  • Click Create Repository
  • Fill details

Setup rclone (Optional - Cloud Backup)

Install:

curl https://rclone.org/install.sh | sudo bash

Configure:

rclone config

Verify:

rclone listremotes

Mount config:

- ~/.config/rclone:/root/.config/rclone

Restart container:

docker compose down
docker compose up -d

Create Backup Job

  • Go to Backups
  • Click Create Job
  • Configure:
    • Schedule (daily/weekly)
    • Retention policy
    • Source → Volume
    • Destination → Repository

Zerobyte will run backups automatically.

Restore Backup

  • Go to Backups
  • Select job
  • Choose snapshot
  • Restore files to original location

Useful Commands

Check logs:

docker logs -f zerobyte

Restart:

docker restart zerobyte

Update Zerobyte:

docker compose pull
docker compose up -d

Notes

  • Zerobyte is still under active development
  • Expect occasional changes or bugs
  • Always test restore process

Conclusion

You now have Zerobyte running on Ubuntu 24.04 with:

  • Web UI backup management
  • Encrypted backups
  • Scheduled automation
  • Multi-storage support

CrownCloud - Get a SSD powered KVM VPS at $4.5/month!
Use the code WELCOME for 10% off!

1 GB RAM / 25 GB SSD / 1 CPU Core / 1 TB Bandwidth per month

Available Locations: LAX | MIA | ATL | FRA | AMS