Skip to main content

Deploy Actual Budget

Before using the one-click template, here is a minimal Docker Compose setup for self-hosting the Actual Budget Server (actualbudget/actual-server). This is the same image used in the Hostim.dev template.

If you're new to Docker Compose, check out our guide on how to self-host a Docker Compose app. You can also browse more examples in our Docker Compose library.

Self-host Actual Budget with Docker Compose (minimal)

services:
actual:
image: actualbudget/actual-server:latest
ports:
- "5006:5006"
volumes:
- actual-data:/data

volumes:
actual-data:

This starts the Actual Budget server with a persistent /data directory, which stores all budgets, sync files, and metadata.


Deploy Actual Budget on Hostim.dev (One-Click)

Actual Budget is a self-hosted, open-source personal finance tool that focuses on local-first data storage and synchronization. It supports envelope budgeting, multi-device sync, and a clean, intuitive interface – all while keeping your financial data private.

💰 Budget like a pro. Sync across devices. Stay in control.

Try it Yourself

Guest project runs for 1 hour. Log in to save and extend to 5 days.

Why Host Actual Budget on Hostim.dev?

  • One-click Docker deployment
  • Persistent volume included
  • Automatic HTTPS + domain
  • Real-time logs and metrics
  • Local-first sync — private by design

What's included

ResourceDetails
Appactualbudget/actual-server image
Volume/data
DomainFree *.hostim.dev subdomain
SSLLet’s Encrypt (auto-enabled)
Port5006

How to Deploy

  1. Go to your Hostim.dev dashboard.
  2. Click Create ProjectUse a Template.
  3. Select the Actual Budget template.
  4. Choose a resource plan (Dev, Prod, or Full).
  5. Hit Deploy.

Post-Deploy Notes

  • All data lives in the /data volume
  • Add a custom domain under Networking
  • Use the dashboard to view logs, metrics, and resource usage

FAQ

Where does Actual Budget store my data?

All data is stored in the /data directory inside the container. On Hostim.dev this is backed by a persistent volume named actual-data.

How do I back up my budgets?

You can export budgets via the web UI, or SSH into the project’s Bastion host and copy the files under /volumes/actual-data.

Does Actual Budget need a database?

No. The server stores everything in local files (SQLite-like structured storage). No MySQL or PostgreSQL is required.

How do I enable device sync?

Use the built-in sync API. Point all devices to your instance’s HTTPS URL (e.g. https://your-project.hostim.dev).

How do I update the Actual Server?

For Docker Compose: docker compose pull && docker compose up -d On Hostim.dev: redeploy the app (image is automatically updated).

Can I access my data if my server goes down?

Yes. All budget files exist in plain JSON-like structured files in /data . You can back them up or restore them manually.

How do I migrate an existing Actual Budget setup?

Copy your previous /data directory into the new volume and restart the container.

How do I run Actual Budget behind Nginx, Traefik, or Caddy?

Simply proxy HTTPS traffic to port 5006 on the app container.

What should I check if the web UI won't load?

Ensure port 5006 is exposed, the container is healthy, and no reverse proxy is stripping WebSocket headers.


Alternatives

  • Firefly III — full-featured financial manager with bank imports
  • EzBookkeeping — simple income/expense tracking
  • Actual (new unified image) — newer all-in-one version (different server model)

Source + Docs


Looking for something else? Browse all templates →


Try it now

Deploy Actual Budget Now – in less than 60 seconds