usebruno/bruno · error · Error
Port ${port} is already in use on this system.
Error message
Port ${port} is already in use on this system. What it means
Error "Port ${port} is already in use on this system." thrown in usebruno/bruno.
Source
Thrown at packages/bruno-electron/src/app/mock-server/mock-server.js:145
if (!(await isPortAvailable(normalizedPort))) {
return { available: false, reason: 'system' };
}
return { available: true, reason: null };
};
const assertIsolatedPortAvailable = async (requestedPort, mockServerUid) => {
const port = Number(requestedPort) || DEFAULT_GATEWAY_PORT;
const result = await checkPortAvailable(port, { mockServerUid });
if (!result.available) {
if (result.reason === 'bruno' || result.reason === 'bruno-config') {
throw new Error(`Port ${port} is already used by another mock server in Bruno.`);
}
if (result.reason === 'system') {
throw new Error(`Port ${port} is already in use on this system.`);
}
throw new Error(`Port ${port} is not available.`);
}
return port;
};
const resolveIsolatedPort = async (requestedPort, mockServerUid) => (
assertIsolatedPortAvailable(requestedPort, mockServerUid)
);
const suggestPort = async (startPort = DEFAULT_GATEWAY_PORT, { additionalUsedPorts = [] } = {}) => {
const used = getUsedPorts();
for (const port of additionalUsedPorts) {
const normalizedPort = Number(port);
if (normalizedPort >= 1 && normalizedPort <= 65535) {
used.add(normalizedPort);View on GitHub (pinned to 9bdd81c7bd)
Solutions
- Choose a different port for the mock server.
- Find and stop the system process using the port (e.g. lsof -i :<port>).
When it happens
Trigger: Thrown at packages/bruno-electron/src/app/mock-server/mock-server.js:145 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of usebruno/bruno@9bdd81c7bd (2026-08-13).
Data as JSON: /api/errors/bf10796ac5823f2b.
Report an issue: GitHub.