Skip to main content
This guide walks you through archiving a local directory to Azure Blob Storage using Arius. By the end, you’ll have a fully encrypted, deduplicated archive running in the cloud. For more installation options beyond Docker, see the Installation page.
1

Prerequisites: Create an Azure Storage Account

You need an Azure Storage Account and its access key before running Arius.
  1. Log in to the Azure Portal.
  2. Create a Storage Account (any region, LRS redundancy is sufficient for archival).
  3. Navigate to Security + networking → Access keys and copy one of the two keys.
  4. Note your storage account name — you’ll need both values in the next steps.
2

Install Arius via Docker

Docker is the recommended way to run Arius. Pull the latest image from Docker Hub:
docker pull woutervanranst/arius
Verify the image is available:
docker run --rm woutervanranst/arius --version
3

Set Your Credentials

Export your Azure Storage credentials as environment variables so you don’t have to pass them on every command:
export ARIUS_ACCOUNT_NAME="your-storage-account-name"
export ARIUS_ACCOUNT_KEY="your-storage-account-key"
Add these lines to your shell profile (~/.bashrc, ~/.zshrc, etc.) to persist them across sessions.
4

Archive Your First Directory

Run the archive command, mounting the directory you want to back up to /archive inside the container:
docker run --rm \
  -v /path/to/your/data:/archive \
  -e ARIUS_ACCOUNT_NAME \
  -e ARIUS_ACCOUNT_KEY \
  woutervanranst/arius \
  archive \
    --accountname "$ARIUS_ACCOUNT_NAME" \
    --accountkey  "$ARIUS_ACCOUNT_KEY" \
    --passphrase  "your-encryption-passphrase" \
    --container   "arius"
What happens during archive:
  • Files are hashed and deduplicated at the file level.
  • Contents are AES256-encrypted using your passphrase before upload.
  • Blobs are uploaded to the archive storage tier by default (~1 EUR/TB/month).
  • Small pointer files (.pointer.arius) are created alongside your local files, keeping your directory structure visible in the filesystem.
Optional flags:
FlagDescription
--tier=hot|cool|archiveOverride the storage tier (default: archive)
--remove-localDelete local files after a successful upload
--dedupEnable block-level deduplication within files
--fasthashSkip re-hashing files that already have a pointer (do not use if file contents may have changed)
5

Verify with pointer synchronization

After archiving, run restore without --download to confirm that all pointer files on disk match the current state of your remote repository. This does not download any file contents — it only creates or removes local .pointer.arius files to reflect what is in Azure.
docker run --rm \
  -v /path/to/your/data:/archive \
  -e ARIUS_ACCOUNT_NAME \
  -e ARIUS_ACCOUNT_KEY \
  woutervanranst/arius \
  restore \
    --accountname "$ARIUS_ACCOUNT_NAME" \
    --accountkey  "$ARIUS_ACCOUNT_KEY" \
    --passphrase  "your-encryption-passphrase" \
    --container   "arius"
A successful run confirms your local pointer files are in sync with Azure.
Files stored in the Archive tier must be rehydrated before they can be downloaded. Rehydration typically takes up to 15 hours. If you run restore --download and some files are still rehydrating, Arius will report them and you can re-run the command after the rehydration window has passed.

Next Steps

Installation

Explore all installation methods including native binaries and Arius Explorer for Windows.

Archive Command

Full reference for all archive options, tiers, deduplication, and encryption settings.

Restore Command

Learn how to synchronize pointers, trigger rehydration, and download files.

Arius Explorer

Browse and manage your Arius repository with the Windows GUI application.

Build docs developers (and LLMs) love