Docker configuration
The supplied Compose file is the supported Stackarr installation. Put optional overrides in a .env file beside docker-compose.yml so updates do not overwrite them.
Common settings
TIMEZONE=Etc/UTC
STACKARR_BIND_IP=127.0.0.1
STACKARR_WEB_PORT=7777
MEDIA_ROOT=/srv/media
DOWNLOADS_ROOT=/srv/downloads
BACKUP_ROOT=/srv/backupsCreate the host folders before starting services and make sure Docker can read and write them.
Why Stackarr uses the Docker socket
Stackarr needs /var/run/docker.sock to inspect and manage the containers selected during setup. This is powerful host-level access.
- Keep the dashboard bound to localhost until authentication is configured.
- Do not expose the local stdio MCP process over the network.
- Use the
observeormanageagent profile unless broader authority is intentional. - Review Agent Activity after automated changes.
Start and stop
docker compose --profile stackarr up -d app
docker compose stop app
docker compose logs -f appStackarr starts other services only after you select them during setup.
Choose an image channel
The moving early-access image is:
STACKARR_IMAGE=polyphonic/stackarr:alphaUse a versioned tag when you want repeatable deployments:
STACKARR_IMAGE=polyphonic/stackarr:0.3.0-alpha.1Connect an MCP client
Chat clients run on the Docker host. Generate the correct stdio configuration for the client you use:
docker exec app /app/bin/stackarr mcp config codex --profile manageRun the generated command. Stackarr includes the required interactive stdio flag and selected authority profile. See MCP connections for every supported client, including private ChatGPT access.
Audit folder access
docker exec app /app/bin/stackarr permissions auditThe audit checks Stackarr's config, logs, downloads, backups, and the bind mounts used by enabled services.