docker-compose-dev
just dev runs the stack via Docker Compose. The split is:
docker-compose.base.yaml— shared service definitionsdocker-compose.yaml— local-development overrides that extendbase
On macOS and Windows (via Docker Desktop), host networking must be enabled
in Docker Desktop settings (Settings → Resources → Network → Enable host networking) — without it, the server cannot reach plugins or fake rigs on
their bound ports. Linux gets this implicitly.
What to do
- When adding or modifying a service, check whether it belongs in
base(shared with deployment artifacts) or only in the dev override. - Preserve port bindings that match what plugins and
fake-antminer/fake-proto-rigexpect (4028 for cgminer, 80 for Antminer Web API). - If a service fails to come up, first verify host networking is enabled on Docker Desktop before debugging YAML.
What to avoid
- Don't switch services from host networking to bridge networking to "fix" a port conflict — it breaks plugin↔miner communication on Mac/Win.
- Don't add new exposed-port mappings that overlap the cgminer/web API ports already consumed by fake rigs.