Config File Location
isol8 looks for config in this order (first found wins):./isol8.config.json(current working directory)~/.isol8/config.json(home directory)
Full Schema
Fields
Top-Level
Maximum number of concurrent container executions. Enforced by a global semaphore in the server.
defaults
Default values for execution options. These are used when a request doesn’t specify its own values.Default execution timeout in milliseconds.
Default memory limit. Accepts Docker format:
256m, 512m, 1g.Default CPU limit as fraction of one core.
Default network mode:
none, host, or filtered.Default size of the
/sandbox tmpfs mount.Default size of the
/tmp tmpfs mount.network
Network filtering rules forfiltered network mode.
Regex patterns for allowed hostnames. When non-empty, only matching hostnames can be accessed.
Regex patterns for blocked hostnames. Matching hostnames are denied.
cleanup
Server cleanup behavior for stale containers.Whether the server should periodically clean up old containers.
Maximum age of a container in milliseconds before it’s eligible for auto-pruning (default: 1 hour).
dependencies
Packages to bake into custom Docker images when runningisol8 setup.
Python packages (pip install).
Node.js packages (npm install -g).
Bun packages (bun install -g).
Deno module URLs (deno cache).
Alpine apk packages.
JSON Schema
A JSON Schema file is available atschema/isol8.config.schema.json. Reference it in your config file for editor autocompletion: