Docker provider
The Docker provider mounts your Docker daemon into /docker, exposing containers, system metadata, and Compose projects as regular files. No SDK, no API client: ls lists running containers, cat reads state.
Mount point
Section titled “Mount point”All paths are under /omnifs/docker/ once the provider is loaded. The examples below use /omnifs as the mount root; adjust if you configured a different mount point.
Configuration
Section titled “Configuration”One optional config key:
| Key | Type | Required | Default |
|---|---|---|---|
endpoint | string | no | unix:///var/run/docker.sock |
Set endpoint only when connecting to a remote daemon or a non-standard socket path. The default works for Docker Desktop and most Linux installs.
System info
Section titled “System info”Two files describe the daemon itself:
/docker/system/info.json/docker/system/version.jsoncat /omnifs/docker/system/version.jsonBoth files are read-only snapshots returned on demand. They reflect the daemon’s current state at the time of the read.
Containers
Section titled “Containers”List running and stopped containers
Section titled “List running and stopped containers”ls /omnifs/docker/containers/_runningls /omnifs/docker/containers/_stoppedExample output:
nginx postgres redisEach entry is a container name. The _running and _stopped directories are virtual; omnifs populates them live from the daemon.
Inspect a container by name
Section titled “Inspect a container by name”Three files are available under containers/by-name/{name}/:
| File | Contents |
|---|---|
state | Current lifecycle state (running, exited, paused, etc.) |
inspect.json | Full docker inspect output as JSON |
summary.txt | Human-readable summary: image, status, ports, mounts |
cat /omnifs/docker/containers/by-name/postgres/staterunningcat /omnifs/docker/containers/by-name/postgres/inspect.jsoncat /omnifs/docker/containers/by-name/postgres/summary.txtInspect a container by ID
Section titled “Inspect a container by ID”The same three files are available under containers/by-id/{id}/:
cat /omnifs/docker/containers/by-id/a3f9c12b8e01/statecat /omnifs/docker/containers/by-id/a3f9c12b8e01/inspect.jsonYou can use a prefix of the container ID as long as it is unambiguous.
Compose projects
Section titled “Compose projects”Containers belonging to a Compose project are reachable under a structured path:
/docker/compose/{project}/services/{service}/containers/{name}ls /omnifs/docker/compose/myapp/services/web/containers/This is a directory listing: each entry is a container name running that service. From there, use by-name or by-id paths to read state and inspect data.
Quick reference
Section titled “Quick reference”| Path | Op | What you get |
|---|---|---|
/docker/system/info.json | cat | Daemon info |
/docker/system/version.json | cat | API and engine versions |
/docker/containers/_running | ls | Names of running containers |
/docker/containers/_stopped | ls | Names of stopped containers |
/docker/containers/by-name/{name}/state | cat | Lifecycle state string |
/docker/containers/by-name/{name}/inspect.json | cat | Full inspect payload |
/docker/containers/by-name/{name}/summary.txt | cat | Human-readable summary |
/docker/containers/by-id/{id}/inspect.json | cat | Full inspect payload by ID |
/docker/compose/{project}/services/{service}/containers/{name} | ls | Containers for a Compose service |
Common patterns
Section titled “Common patterns”Find which containers are currently stopped:
ls /omnifs/docker/containers/_stoppedCheck the state of every running container in one pass:
for c in /omnifs/docker/containers/_running/*; do printf "%s: %s\n" "$(basename "$c")" "$(cat /omnifs/docker/containers/by-name/"$(basename "$c")"/state)"doneGrep an inspect payload without docker inspect:
grep -i "IPAddress" /omnifs/docker/containers/by-name/nginx/inspect.jsonPull exposed ports for all running containers:
grep -h "Ports" /omnifs/docker/containers/by-name/*/summary.txt