Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| services:actualbudget [2024/10/28 14:18] – willy | services:actualbudget [2025/01/31 09:49] (current) – [Reset password] willy | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Actual Budget ====== | ====== Actual Budget ====== | ||
| - | [[https:// | + | [[https:// |
| + | You own your data and can do whatever you want with it. Featuring multi-device sync, optional end-to-end encryption and so much more | ||
| + | ==== Installation ==== | ||
| + | |||
| + | Create the usual dedicated user. Also, all data needs to be located in a dedicated folder that will be **/ | ||
| + | < | ||
| useradd -d / | useradd -d / | ||
| mkdir / | mkdir / | ||
| chown actualbudget: | chown actualbudget: | ||
| + | </ | ||
| - | + | Now, as // | |
| <file - docker-compose.yml> | <file - docker-compose.yml> | ||
| + | version: " | ||
| services: | services: | ||
| actual_server: | actual_server: | ||
| Line 17: | Line 23: | ||
| # i.e. http:// | # i.e. http:// | ||
| - ' | - ' | ||
| - | environment: | ||
| - | - ACTUAL_WEB_ROOT=/ | ||
| - | # Uncomment any of the lines below to set configuration options. | ||
| - | # - ACTUAL_HTTPS_KEY=/ | ||
| - | # - ACTUAL_HTTPS_CERT=/ | ||
| - | # - ACTUAL_PORT=5006 | ||
| - | # - ACTUAL_UPLOAD_FILE_SYNC_SIZE_LIMIT_MB=20 | ||
| - | # - ACTUAL_UPLOAD_SYNC_ENCRYPTED_FILE_SYNC_SIZE_LIMIT_MB=50 | ||
| - | # - ACTUAL_UPLOAD_FILE_SIZE_LIMIT_MB=20 | ||
| - | # See all options and more details at https:// | ||
| - | # !! If you are not using any of these options, remove the ' | ||
| volumes: | volumes: | ||
| - | | + | - ./data/budget-data:/ |
| - | # '/data' is the path Actual will look for its files in by default, so leave that as-is. | + | |
| - | - ./actual-data:/ | + | |
| - | | + | |
| + | networks: | ||
| + | actualbudget-net: | ||
| </ | </ | ||
| + | |||
| + | Remember to set an available port (5106)! | ||
| + | |||
| + | Now pull it: | ||
| + | <code bash> | ||
| + | podman compose pull | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Single Sign On ==== | ||
| + | |||
| + | Currently due to a few design flaws (poor design choices?) Actual Budget doesn' | ||
| + | |||
| + | |||
| + | ==== Reverse Proxy ==== | ||
| + | |||
| + | You can run Actual Bidget only on a sub-domain. | ||
| + | |||
| + | I assume it will be reachable as **https:// | ||
| + | |||
| + | Following [[https:// | ||
| + | |||
| + | <file - budget.conf> | ||
| + | server { | ||
| + | server_name budget.mydomain.com; | ||
| + | listen 443 ssl; | ||
| + | listen 8443 ssl; | ||
| + | |||
| + | access_log / | ||
| + | error_log / | ||
| + | |||
| + | location / { | ||
| + | proxy_pass http:// | ||
| + | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; | ||
| + | proxy_set_header Host $host; | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Autostart ===== | ||
| + | |||
| + | To start it, and set it up on boot, as usual follow my indications [[gentoo: | ||
| + | < | ||
| + | ln -s / | ||
| + | </ | ||
| + | |||
| + | and create the following config file: | ||
| + | <file - / | ||
| + | USER=actualbudget | ||
| + | DESCRIPTION=" | ||
| + | </ | ||
| + | |||
| + | Add the service to the default runlevel and start it now: | ||
| + | <code bash> | ||
| + | rc-update add user-containers.actualbudget default | ||
| + | rc-service user-containers.actualbudget start | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Reset password ==== | ||
| + | |||
| + | Actual budget relies on a single password for authentication. If you need to replace it, these are the commands. | ||
| + | |||
| + | You can find your container ID with: | ||
| + | <code bash> | ||
| + | podman ps | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | su - actualbuget | ||
| + | podman ps | ||
| + | </ | ||
| + | |||
| + | Then type: | ||
| + | < | ||
| + | podman exec -it << | ||
| + | </ | ||