gastownhall/beads · error
--proxied-server-port requires --proxied-server
Error message
--proxied-server-port requires --proxied-server
What it means
`--proxied-server-port` configures the TCP port of the proxy in front of the managed dolt sql-server and is only meaningful when `--proxied-server` is set. If the port flag is given without `--proxied-server`, init rejects the combination (cmd/bd/init.go:480-483).
Source
Thrown at cmd/bd/init.go:482
}
if err := validateProxiedServerLogPath(serverLogPath); err != nil {
return fmt.Errorf("--proxied-server-log-path %v", err)
}
}
if serverRootPath != "" {
if !initProxiedServer {
return fmt.Errorf("--proxied-server-root-path requires --proxied-server")
}
if !filepath.IsAbs(serverRootPath) {
return fmt.Errorf("--proxied-server-root-path must be an absolute path, got %q", serverRootPath)
}
if err := validateProxiedServerRootPath(serverRootPath); err != nil {
return fmt.Errorf("--proxied-server-root-path %v", err)
}
}
if serverProxyPort != 0 {
if !initProxiedServer {
return fmt.Errorf("--proxied-server-port requires --proxied-server")
}
if serverProxyPort < 1 || serverProxyPort > 65535 {
return fmt.Errorf("--proxied-server-port must be between 1 and 65535, got %d", serverProxyPort)
}
}
if idleTimeoutSet {
if !initProxiedServer {
return fmt.Errorf("--proxied-server-idle-timeout requires --proxied-server")
}
if serverProxyIdleTimeout < 0 {
return fmt.Errorf("--proxied-server-idle-timeout must be 0 (never) or a positive duration, got %s", serverProxyIdleTimeout)
}
if serverProxyIdleTimeout == 0 {
serverProxyIdleTimeout = proxy.IdleTimeoutNever
}
}
externalProvided := externalHost != "" || externalPort != 0 || externalSocketPath != "" ||View on GitHub (pinned to 71377f2769)
Solutions
- Add `--proxied-server` to the command.
- Set BEADS_DOLT_PROXIED_SERVER=1 in the environment instead of the flag.
- Drop `--proxied-server-port` if proxy mode is not wanted (default proxy port will not be configured).
Example fix
// before bd init --proxied-server-port 8165 // after bd init --proxied-server --proxied-server-port 8165
Defensive patterns
Strategy: validation
Validate before calling
#!/usr/bin/env bash if [[ -n "$PROXY_PORT" ]] && [[ -z "$PROXIED" ]]; then echo "--proxied-server-port requires --proxied-server" >&2; exit 2 fi
Type guard
func portFlagValid(useProxied bool, portSet bool) bool { return !portSet || useProxied } Try / catch
if out, err := exec.Command("bd", "init", args...).CombinedOutput(); err != nil {
if strings.Contains(string(out), "--proxied-server-port requires --proxied-server") {
// add --proxied-server or drop the port flag
}
} Prevention
- Group --proxied-server with all proxied-server-* flags in a single helper function.
- Don't share one flag template between `--server` and proxied init modes.
- Audit scripts after switching deployment modes to drop orphaned mode-specific flags.
When it happens
Trigger: Running `bd init --proxied-server-port 8165` without `--proxied-server`; check is `serverProxyPort != 0 && !initProxiedServer`. Also triggered when scripts set the port via flags but the --proxied-server toggle comes only from BEADS_DOLT_PROXIED_SERVER env that is missing.
Common situations: Reusing a shared flag template across `bd init --server` and proxied modes; port flag left behind after switching deployment mode from proxied to plain; operator assumed the port flag alone would enable proxy mode.
Related errors
- --proxied-server-root-path requires --proxied-server
- --proxied-server-port must be between 1 and 65535, got %d
- --proxied-server-idle-timeout requires --proxied-server
- --proxied-server-external-* flags require --proxied-server
- cannot use multiple conflict resolution flags
AI-assisted analysis of gastownhall/beads@71377f2769 (2026-08-30).
Data as JSON: /api/errors/31ea19abd50f0dfa.
Report an issue: GitHub.