nikivdev/code · error · anyhow::Error

Port 80 is already owned by docker container '{}'. Stop it f

Error message

Port 80 is already owned by docker container '{}'. Stop it first (for example: docker stop {}).

What it means

Error "Port 80 is already owned by docker container '{}'. Stop it first (for example: docker stop {})." thrown in nikivdev/code.

Source

Thrown at src/domains.rs:534

    if !output.status.success() {
        return Ok(None);
    }
    let text = String::from_utf8_lossy(&output.stdout);
    for line in text.lines() {
        let mut parts = line.splitn(2, '\t');
        let name = parts.next().unwrap_or("").trim();
        let ports = parts.next().unwrap_or("");
        if ports.contains(":80->80/tcp") {
            return Ok(Some(name.to_string()));
        }
    }
    Ok(None)
}

fn assert_no_port_80_conflict() -> Result<()> {
    if let Some(owner) = docker_container_owning_port_80()? {
        if owner != PROXY_CONTAINER_NAME {
            bail!(
                "Port 80 is already owned by docker container '{}'. Stop it first (for example: docker stop {}).",
                owner,
                owner
            );
        }
        return Ok(());
    }

    if proxy_is_running()? {
        return Ok(());
    }

    if let Some(listener) = port_80_listener_summary()? {
        bail!(
            "Port 80 is already in use by '{}'. Stop that listener, then retry `f domains up`.",
            listener
        );
    }

View on GitHub (pinned to a747e741ae)

When it happens

Trigger: Thrown at src/domains.rs:534 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of nikivdev/code@a747e741ae (2026-09-01). Data as JSON: /api/errors/20fefb55025c2b83. Report an issue: GitHub.