# ActualBudget - Personal Finance / Budgeting # Domain: budget.{{DOMAIN}} # Database: None (file-based) # RAM: ~50MB | Pi-compatible: Yes # # Environment variables (set in Portainer): # (none required — app is self-contained) # # First-time setup: # Create a password on first visit, no default credentials. services: actualbudget: image: actualbudget/actual-server:26.1.0 container_name: actualbudget restart: unless-stopped environment: - TZ=Europe/Budapest volumes: - actualbudget_data:/data networks: - traefik-public healthcheck: test: ["CMD", "wget", "--spider", "-q", "http://localhost:5006/"] interval: 30s timeout: 5s retries: 3 start_period: 10s labels: - "traefik.enable=true" - "traefik.http.routers.actualbudget.rule=Host(`budget.{{DOMAIN}}`)" - "traefik.http.routers.actualbudget.entrypoints=websecure" - "traefik.http.routers.actualbudget.tls=true" - "traefik.http.services.actualbudget.loadbalancer.server.port=5006" volumes: actualbudget_data: networks: traefik-public: external: true