# Wallos

Tracks recurring subscriptions and shows what they cost over time.

- Replaces: [Rocket Money](https://openlogs.fyi/alternatives/rocket-money)
- Summary: Paid subscription tracking services, such as Rocket Money.
- Stack: PHP (language)
- Deployment: docker_compose
- License: GPL-3.0 (osi) [source](https://github.com/ellite/Wallos/blob/573010f72bca91556141ce822efa443f3b72591f/LICENSE.md)
- Business model: unknown. The README at the pinned commit does not state a business model, so it stays unknown. ([source](https://github.com/ellite/Wallos/blob/573010f72bca91556141ce822efa443f3b72591f/README.md), read 2026-10-22)
- Difficulty: easy. 1 service, 2 volume mounts, no env values to set, no elevated host access. Heuristic score 1 of 11: easy.
- Requirements: not stated
- Repository: [ellite/Wallos](https://github.com/ellite/Wallos)

## Install

1. Docker with the Compose plugin ([source](https://github.com/ellite/Wallos/blob/573010f72bca91556141ce822efa443f3b72591f/docker-compose.yaml))

   ```text
   A host with Docker and the Docker Compose plugin. This entry runs from a compose file.
   ```

2. Save the compose file as docker-compose.yaml ([source](https://github.com/ellite/Wallos/blob/573010f72bca91556141ce822efa443f3b72591f/docker-compose.yaml))

   ```yaml
   services:
     wallos:
       container_name: wallos
       image: bellamy/wallos:latest
       ports:
         - "8282:80/tcp"
       environment:
         TZ: 'America/Toronto'
         # Optional OIDC environment variables
         # OIDC_ENABLED: "true"
         # OIDC_PROVIDER_NAME: "Authelia"
         # OIDC_CLIENT_ID: "wallos"
         # OIDC_CLIENT_SECRET: "replace-me"
         # OIDC_CLIENT_SECRET_FILE: "/run/secrets/wallos_oidc_secret"
         # OIDC_ISSUER: "https://auth.example.com"
         # OIDC_AUTH_URL: "https://auth.example.com/oauth2/authorize"
         # OIDC_TOKEN_URL: "https://auth.example.com/oauth2/token"
         # OIDC_USERINFO_URL: "https://auth.example.com/oauth2/userinfo"
         # OIDC_REDIRECT_URL: "https://wallos.example.com/index.php"
         # OIDC_LOGOUT_URL: "https://auth.example.com/logout"
         # OIDC_USER_IDENTIFIER: "sub"
         # OIDC_SCOPES: "openid email profile"
         # OIDC_AUTO_CREATE_USER: "true"
         # OIDC_DISABLE_PASSWORD_LOGIN: "false"
         # OIDC_REQUIRE_EMAIL_VERIFIED: "true"
         # Optional SSRF allowlist (overrides the Security Settings allowlist in the Admin UI)
         # SSRF_ALLOWLIST: "auth.example.com,192.168.1.100:8123"
       # Volumes store your data between container upgrades
       volumes:
         - './db:/var/www/html/db'
         - './logos:/var/www/html/images/uploads/logos'
       restart: unless-stopped
   ```

3. Start it ([source](https://github.com/ellite/Wallos/blob/573010f72bca91556141ce822efa443f3b72591f/docker-compose.yaml))

   ```bash
   docker compose up -d
   ```

4. Open the app ([source](https://github.com/ellite/Wallos/blob/573010f72bca91556141ce822efa443f3b72591f/docker-compose.yaml))

   ```text
   Open http://localhost:8282. The compose file publishes host port 8282 for the wallos service.
   ```

Compose file check: config_ok on 2026-10-22.

## Gotchas and maintenance

### Gotchas

- Some images use the latest tag or no tag: Images without a pinned version: wallos: bellamy/wallos:latest. A later pull can get a different version. ([source](https://github.com/ellite/Wallos/blob/573010f72bca91556141ce822efa443f3b72591f/docker-compose.yaml), checked 2026-10-22)
- The compose file publishes host ports: Host ports: 8282 (wallos). A port without a host address listens on all host network interfaces. ([source](https://github.com/ellite/Wallos/blob/573010f72bca91556141ce822efa443f3b72591f/docker-compose.yaml), checked 2026-10-22)
- The compose file mounts host folders: Host paths mounted into containers: ./db at /var/www/html/db (wallos), ./logos at /var/www/html/images/uploads/logos (wallos). ([source](https://github.com/ellite/Wallos/blob/573010f72bca91556141ce822efa443f3b72591f/docker-compose.yaml), checked 2026-10-22)

### Signals

Computed from a GitHub snapshot taken 2026-10-22.

- Open issues and pull requests: 83
- Stars: 8726, forks: 451
- Last push: 2026-10-21 (0 days ago)
- Latest release: v5.10.1 on 2026-10-21 (0 days ago)

## Sources

- [Repository: https://github.com/ellite/Wallos](https://github.com/ellite/Wallos)
- [License: https://github.com/ellite/Wallos/blob/573010f72bca91556141ce822efa443f3b72591f/LICENSE.md](https://github.com/ellite/Wallos/blob/573010f72bca91556141ce822efa443f3b72591f/LICENSE.md)
- [Business model: https://github.com/ellite/Wallos/blob/573010f72bca91556141ce822efa443f3b72591f/README.md](https://github.com/ellite/Wallos/blob/573010f72bca91556141ce822efa443f3b72591f/README.md)
- [Compose file: https://github.com/ellite/Wallos/blob/573010f72bca91556141ce822efa443f3b72591f/docker-compose.yaml](https://github.com/ellite/Wallos/blob/573010f72bca91556141ce822efa443f3b72591f/docker-compose.yaml)

---
Canonical: https://openlogs.fyi/tools/wallos  
Last updated: 2026-10-22
