DioxusLabs/dioxus · error
Failed to bind server to: {devserver_bind_address}, is there
Error message
Failed to bind server to: {devserver_bind_address}, is there another devserver running?
To run multiple devservers, use the --port flag to specify a different port What it means
Error "Failed to bind server to: {devserver_bind_address}, is there another devserver running? To run multiple devservers, use the --port flag to specify a different port" thrown in DioxusLabs/dioxus.
Source
Thrown at packages/cli/src/serve/server.rs:95
/// Start the development server.
/// This will set up the default http server if there's no server specified (usually via fullstack).
///
/// This will also start the websocket server that powers the devtools. If you want to communicate
/// with connected devtools clients, this is the place to do it.
pub(crate) fn start(runner: &AppServer) -> Result<Self> {
let (hot_reload_sockets_tx, hot_reload_sockets_rx) = futures_channel::mpsc::unbounded();
let (build_status_sockets_tx, build_status_sockets_rx) = futures_channel::mpsc::unbounded();
// Create the listener that we'll pass into the devserver, but save its IP here so
// we can display it to the user in the tui
let devserver_bind_ip = runner.devserver_bind_ip;
let devserver_port = runner.devserver_port;
let proxied_port = runner.proxied_port;
let devserver_exposed_ip = devserver_bind_ip;
let devserver_bind_address = SocketAddr::new(devserver_bind_ip, devserver_port);
let listener = std::net::TcpListener::bind(devserver_bind_address).with_context(|| {
anyhow::anyhow!(
"Failed to bind server to: {devserver_bind_address}, is there another devserver running?\nTo run multiple devservers, use the --port flag to specify a different port"
)
})?;
let proxied_address = proxied_port.map(|port| SocketAddr::new(devserver_exposed_ip, port));
// Set up the router with some shared state that we'll update later to reflect the current state of the build
let build_status = SharedStatus::new_with_starting_build();
let router = build_devserver_router(
runner,
hot_reload_sockets_tx,
build_status_sockets_tx,
proxied_address,
build_status.clone(),
)?;
// And finally, start the server mainloop
tokio::spawn(devserver_mainloop(View on GitHub (pinned to 24f6a829df)
Solutions
- The devserver port is already in use. Stop the other devserver or pass --port to use a different port.
When it happens
Trigger: Thrown at packages/cli/src/serve/server.rs:95 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of DioxusLabs/dioxus@24f6a829df (2026-08-23).
Data as JSON: /api/errors/5cee8330e6b0ffa9.
Report an issue: GitHub.