Self-host

Download & install

One Docker container, no external database. You only need Docker with the Compose plugin.

1

Install Docker

Install Docker with the Compose plugin on your server.

2

Create a docker-compose.yml

Copy the file below (or the one in the repo).

services:
  cloudbank:
    image: ghcr.io/easly1989/cloudbank:main   # latest stable release
    container_name: cloudbank
    restart: unless-stopped
    ports:
      - "8080:8080"
    environment:
      CB_SECURE_COOKIES: "false"   # behind HTTPS? set to "true"
    volumes:
      - cloudbank-data:/data

volumes:
  cloudbank-data:
3

Start it

docker compose up -d — the whole install, one container.

4

Open the app

Visit http://localhost:8080 and complete the first-run admin setup. Your data lives in the cloudbank-data volume.

Image tags

Images are published to GHCR: ghcr.io/easly1989/cloudbank. The tag scheme is intentional — :main is stable, :latest is the nightly.

TagMeaning
:mainLatest stable release — use this for a stable self-hosted install.
:latestNightly build from the main branch — bleeding edge, may break.
:vX.Y.ZA specific released version (also :vX.Y).

Configuration

Env varDefaultDescription
CB_ADDR:8080Address the HTTP server listens on.
CB_DATA_DIR/dataDirectory holding the SQLite database and backups.
CB_LOG_LEVELinfodebug, info, warn or error.
CB_SECURE_COOKIEStrueSet false for plain-HTTP LAN installs (no TLS).
CB_RATE_URLfrankfurter.appOverride the online exchange-rate API root.