Had the same problem. looking into the bud source it seems that the ports 80 and 8080 get replaced with an empty string. This happens in @roots/bud-dashboard/lib/dashboard/server/parsePort.js.
/**
* Parse port and return as a string with `:` prefix
*/
const parsePort = (port) => {
if (!port ||
(isString(port) && [``, `80`, `8080`].includes(port)) ||
(isNumber(port) && [80, 8080].includes(port)))
return ``;
return `:${port}`;
};
Confirmed that this is causing it by removing the early return. Not sure why this was added. But this feels like unwanted behaviour for giving in a proxy url. Not knowing bud internals this might be done as it’s needed somewhere else in bud when parsing a port.