Skip to content
Arcagrad

Configuration

Arcagrad is built to need almost no configuration. The two volumes and the port from the Install page are all Docker needs — there’s no config file or environment variables to set up. Everything else is managed inside the app once it’s running.

The container listens on port 3000. Map it to whatever host port you like with -p:

Terminal window
-p 8080:3000 # reach Arcagrad at http://localhost:8080

On a home network you can use Arcagrad over plain HTTP. To reach it from anywhere on a real domain with automatic HTTPS, put it behind a reverse proxy. Caddy is the simplest — a two-line config gets you a certificate:

Caddyfile
arcagrad.example.com {
reverse_proxy localhost:3000
}

The container runs as root by default, so a mounted /data is writable with no setup. If you’d rather it run as your host user — so files it writes are owned by you — pass --user (or set user: in compose):

Terminal window
--user 1000:1000

The image ships with a built-in health check against /health, so docker ps reports the container as healthy once it’s ready to serve. Point a reverse proxy or an uptime monitor at the same path — it returns 200 OK when Arcagrad is up.

Pull the newer image and recreate the container. Your library and everything in /data carry over untouched:

Terminal window
docker compose pull
docker compose up -d

Everything Arcagrad generates — the index, thumbnails, tags, reading progress — lives in /data. Back it up and you’ve saved all of it; your library files are backed up separately, wherever you keep them.

Accounts, metadata plugins, per-kind settings, and source credentials are all managed from the admin area inside Arcagrad. There’s nothing to edit in a file on disk.