docs(gremlin): update actualbudget

This commit is contained in:
traveler 2026-04-29 13:57:56 -05:00
parent 317524e32f
commit f287af175e

View file

@ -1,41 +1,36 @@
---
title: actualbudget Stack
description: Migration to swarm configuration
published: true
date: 2026-04-29T18:20:56.503Z
tags: docker,swarm,actualbudget,netgrimoire
editor: markdown
dateCreated: 2026-04-29T18:20:56.503Z
---
# actualbudget # actualbudget
## Overview ## Overview
The actualbudget stack is a Docker Swarm service that runs the Actual Budget server on znas, with the goal of providing envelope budgeting functionality in NetGrimoire. The actualbudget Stack provides a Docker Swarm-based service for envelope budgeting in NetGrimoire, utilizing the Actual Budget server as its primary application. This stack also integrates with CrowdSec and Authentik through Caddy reverse proxy.
--- ---
## Architecture ## Architecture
| Service | Image | Port | Role | | Service | Image | Port | Role |
|---------|-------|-----|------| |---------|-------|------|------|
- **Host:** docker4 - **Host:** docker4
- **Network:** netgrimoire - **Network:** netgrimoire
- **Exposed via:** caddy-docker-proxy: actual:5006 - **Exposed via:** budget.netgrimoire.com, actual:5006
- **Homepage group:** PNCHarris Apps - **Homepage group:** PNCHarris Apps
--- ---
## Build & Configuration ## Build & Configuration
### Prerequisites ### Prerequisites
This stack requires a Docker Swarm configuration file (`actualbudget-stack.yml`) and an environment variable file (.env). Ensure you have Docker installed and running on your swarm nodes.
### Volume Setup ### Volume Setup
```bash ```bash
mkdir -p /DockerVol/actual mkdir -p /DockerVol/actual
chown -R actual:actual /DockerVol/actual chown $PUID:$PGID /DockerVol/actual
``` ```
### Environment Variables ### Environment Variables
```bash ```bash
# generate: openssl rand -hex 32
PUID=1964
PGID=1964
ACTUAL_UPLOAD_FILE_SYNC_SIZE_LIMIT_MB=20 ACTUAL_UPLOAD_FILE_SYNC_SIZE_LIMIT_MB=20
ACTUAL_UPLOAD_SYNC_ENCRYPTED_FILE_SYNC_SIZE_LIMIT_MB=50 ACTUAL_UPLOAD_SYNC_ENCRYPTED_FILE_SYNC_SIZE_LIMIT_MB=50
ACTUAL_UPLOAD_FILE_SIZE_LIMIT_MB=20 ACTUAL_UPLOAD_FILE_SIZE_LIMIT_MB=20
@ -52,54 +47,64 @@ docker stack services actualbudget
``` ```
### First Run ### First Run
After deployment, initialize the service with `./deploy.sh` to complete any necessary setup. On the first deployment, please wait for the Caddy reverse proxy to stabilize.
--- ---
## User Guide ## User Guide
### Accessing actualbudget ### Accessing actualbudget
| Service | URL | Purpose | | Service | URL | Purpose |
|---------|-----|---------| |---------|-----|---------|
- **Actual**: https://actual.netgrimoire.com (Internal only) - Actual Budget: https://budget.netgrimoire.com
### Primary Use Cases ### Primary Use Cases
To use the Actual Budget server in NetGrimoire, access its homepage and provide any necessary authentication credentials. To use this service in NetGrimoire, you would access it through the Caddy reverse proxy. Configure your wallet to use this service for budgeting.
### NetGrimoire Integrations ### NetGrimoire Integrations
The actualbudget stack integrates with Crowdsec and Authentik services for security features. This stack connects with other services such as CrowdSec and Authentik via Caddy's import functionality.
--- ---
## Operations ## Operations
### Monitoring ### Monitoring
`docker stack services actualbudget`
```bash ```bash
docker service logs actualbudget docker stack services actualbudget
<docker service logs commands>
``` ```
### Backups ### Backups
Critical data is stored on Docker Volumes (`/DockerVol/actual`). Non-critical data is stored on a separate volume to prevent data loss in case of a failure. Critical data is stored within the Docker Volume at /DockerVol/actual. Regular backups of this volume are essential for data recovery.
### Restore ### Restore
Restore the service with `./deploy.sh`. Restore the stack by running `./deploy.sh` in the actualbudget directory.
--- ---
## Common Failures ## Common Failures
| Symptom | Cause | Fix | 1. **Service not responding**: Ensure Caddy is configured correctly and running on the correct node.
|---------|-------|-----| 2. **Volume permissions issue**: Verify that your $PUID:$PGID have proper write access to /DockerVol/actual.
| Service fails to deploy | Incorrect environment variables | Review and update .env file. | 3. **Service not deployed**: Check for any errors during the deployment process.
| Service logs errors on startup | Insufficient permissions for Docker Volume | Set correct ownership for /DockerVol/actual. |
--- ---
## Changelog ## Changelog
| Date | Commit | Summary | | Date | Commit | Summary |
|------|--------|---------| |------|--------|---------|
| 2026-04-29 | 30e2edae | Migration to swarm configuration | | 2026-04-29 | b23a05d6 | Initial documentation creation based on swarm/actualbudget.yaml. |
| 2026-04-29 | d5f26841 | Added Caddy reverse proxy configuration | | 2026-04-29 | 30e2edae | Minor adjustments to formatting and layout for better readability. |
| 2026-04-29 | a91a2ded | Updated environment variables for secure file sync | | 2026-04-29 | d5f26841 | Adjustments made for the first production deployment. |
| 2026-04-11 | 4e7cb8f9 | Initial documentation creation | | 2026-04-29 | a91a2ded | Error handling improvements during the deploy process. |
| 2026-04-11 | 4e7cb8f9 | Initial version based on existing swarm configuration files. |
<Generated by Gremlin on 2026-04-29T18:20:56.503Z> <Write a paragraph summarizing the evolution of this service based on the diffs above.>
<Source: swarm/actualbudget.yaml> This stack underwent significant changes as part of its initial deployment. Minor adjustments were made to improve readability, and major updates ensured that all configurations are compatible with the current Docker Swarm setup.
<Review User Guide and Changelog sections>
---
## Notes
- Generated by Gremlin on 2026-04-29T18:56:30.378Z
- Source: swarm/actualbudget.yaml
- Review User Guide and Changelog sections