# Docker Daemon (/daemon/docker)



Select the Docker backend:

```bash
mlab daemon backend docker
mlab daemon status
```

The host CLI connects to `mlabd` inside the container:

```text
host mlab -> Docker mlabd -> workers
```

The connection uses `127.0.0.1:47831` and a random token stored at `~/.market-lab/daemon.token`. The port is bound to host loopback only.

The official container uses a read-only root filesystem, drops Linux capabilities, enables `no-new-privileges`, runs with the host user ID, and does not mount the Docker socket.

Choose another compatible image when required:

```bash
mlab daemon backend docker --image my-marketlab-daemon:v0.1.2
```

The container uses the same `~/.market-lab/` state as Native. Replacing it does not remove credentials, snapshots, artifacts, jobs, or logs.

For Python environments, see [Python V2 with Docker](/scripting-v2/docker).
