OS Manuals

/usr/bin/headlamp-server

A Kubernetes web UI that is fully-featured, user-friendly and extensible.

From headlamp 0.46.0-r2 (enterprise-packages), captured 2026-11-08 by running headlamp-server --help (exit 1). permalink

Usage of config:
  -allow-kubeconfig-changes
    	Allow Headlamp to make changes to the known kubeconfigs when needed. E.g. to remove a cluster via the UI. May not be recommendable when Headlamp is deployed as a service.
  -app-name string
    	Application name used in version output, the browser title, and Kubernetes User-Agent headers (default "Headlamp")
  -base-url string
    	Base URL path. eg. /headlamp
  -cache-enabled
    	K8s cache in backend
  -cluster-inventory-label-selector string
    	Label selector used to filter ClusterProfile resources for experimental/alpha Cluster Inventory
  -cluster-inventory-namespaces string
    	Comma-separated namespaces watched for experimental/alpha ClusterProfile resources; "*" watches all
  -cluster-inventory-no-crd-cache-ttl duration
    	How long to cache that an API server has no experimental/alpha ClusterProfile CRD (default 2h0m0s)
  -cluster-inventory-provider-file string
    	Path to the JSON configuration file for experimental/alpha Cluster Inventory access providers
  -cluster-inventory-root-reconcile-interval duration
    	Interval for reconciling experimental/alpha Cluster Inventory roots (default 5m0s)
  -default-dark-theme string
    	Default theme to use when user prefers dark mode
  -default-light-theme string
    	Default theme to use when user prefers light mode
  -dev
    	Allow connections from other origins
  -enable-cluster-inventory
    	Enable experimental/alpha automatic discovery of clusters from ClusterProfile resources
  -enable-dynamic-clusters
    	Enable dynamic clusters, which stores stateless clusters in the frontend.
  -enable-helm
    	Enable Helm operations
  -force-theme string
    	Force a specific theme, overriding user preferences
  -html-static-dir string
    	Static HTML directory to serve
  -in-cluster
    	Set when running from a k8s cluster
  -in-cluster-context-name string
    	Name to use for the in-cluster Kubernetes context. If unset, it is derived from the kube-system/kubeadm-config ConfigMap (treating "kubernetes" as unset), falling back to "main"
  -insecure-ssl
    	Accept/Ignore all server SSL certificates
  -kubeconfig string
    	Absolute path to the kubeconfig file
  -kubeconfig-dir string
    	Directory for Headlamp-managed kubeconfig files
  -listen-addr string
    	Address to listen on; default is empty, which means listening to any address
  -log-level string
    	Set backend log verbosity. Options: debug, info (default), warn, error (default "info")
  -me-email-path string
    	Comma separated JMESPath expressions used to read email from the JWT payload (default "email")
  -me-groups-path string
    	Comma separated JMESPath expressions used to read groups from the JWT payload (default "groups,realm_access.roles")
  -me-user-info-url string
    	URL to fetch additional user info for the /me endpoint. For oauth2proxy /oauth2/userinfo can be used.
  -me-username-path string
    	Comma separated JMESPath expressions used to read username from the JWT payload (default "preferred_username,upn,username,name")
  -metrics-enabled
    	Enable metrics collection
  -no-browser
    	Disable automatically opening the browser when using embedded frontend
  -node-shell-image string
    	Default image to use when creating node shell pods
  -node-shell-namespace string
    	Default namespace to use when creating node shell pods
  -oidc-auto-login
    	Automatic Redirect to OIDC provider
  -oidc-ca-file string
    	CA file for OIDC
  -oidc-callback-url string
    	OIDC callback URL and trusted logout return origin
  -oidc-client-id string
    	ClientID for OIDC
  -oidc-client-secret string
    	ClientSecret for OIDC
  -oidc-idp-issuer-url string
    	Identity provider issuer URL for OIDC
  -oidc-scopes string
    	A comma separated list of scopes needed from the OIDC provider (default "profile,email")
  -oidc-skip-logout
    	Skip logout from OIDC provider
  -oidc-skip-tls-verify
    	Skip TLS verification for OIDC
  -oidc-use-access-token
    	Setup oidc to pass through the access_token instead of the default id_token
  -oidc-use-cookie
    	Enable OIDC cookie usage even when not running in-cluster
  -oidc-use-pkce
    	Use PKCE (Proof Key for Code Exchange) for enhanced security in OIDC flow
  -oidc-use-token-broadcast
    	After a successful OIDC login, also set the auth cookie for other kubeconfig contexts whose OIDC auth-provider has the same idp-issuer-url and client-id. Disabled by default. Preconditions and caveats: https://headlamp.dev/docs/latest/installation/in-cluster/oidc/
  -oidc-validator-client-id string
    	Override ClientID for OIDC during validation
  -oidc-validator-idp-issuer-url string
    	Override Identity provider issuer URL for OIDC during validation
  -otlp-endpoint string
    	OTLP collector endpoint (default "localhost:4317")
  -plugins-dir string
    	Specify the plugins directory to build the backend with (default "/tmp/.config/Headlamp/plugins")
  -pod-debug-image string
    	Default image to use when creating pod debug containers
  -port uint
    	Port to listen from (default 4466)
  -proxy-auth
    	Enable bypass of authentication when identity-aware proxy headers are present
  -proxy-auth-email-header string
    	Header name to read the authenticated email from (default "X-Forwarded-Email")
  -proxy-auth-group-header string
    	Header name to read the authenticated groups from (default "X-Forwarded-Group")
  -proxy-auth-token-header string
    	Header name to read the proxy Id token from (default "X-Forwarded-Id-Token")
  -proxy-auth-username-header string
    	Header name to read the authenticated username from (default "X-Forwarded-User")
  -proxy-urls string
    	Allow proxy requests to specified URLs
  -sampling-rate float
    	Sampling rate for traces (default 1)
  -service-account-token-path string
    	Path to the service account token. Only used when --unsafe-use-service-account-token is set and in-cluster
  -service-name string
    	Service name for telemetry (default "headlamp")
  -service-version string
    	Service version for telemetry (default "0.30.0")
  -session-ttl int
    	The time in seconds for the session to be valid(Default: 86400/24h, Min: 1 , Max: 31536000/1yr ) (default 86400)
  -skipped-kube-contexts string
    	Context name which should be ignored in kubeconfig file
  -stdout-trace-enabled
    	Enable tracing output to stdout
  -tls-cert-path string
    	Certificate for serving TLS
  -tls-key-path string
    	Key for serving TLS
  -tracing-enabled
    	Enable distributed tracing
  -unsafe-use-service-account-token
    	UNSAFE: use the pod's service account token to authenticate all users in-cluster. Disables per-user auth; only safe behind an auth proxy
  -use-otlp-http
    	Use HTTP instead of gRPC for OTLP export
  -user-plugins-dir string
    	Specify the user-installed plugins directory (default "/tmp/.config/Headlamp/user-plugins")
  -version
    	Print version information and exit
  -watch-plugins-changes
    	Reloads plugins when there are changes to them or their directory (default true)
{"level":"error","source":"github.com/kubernetes-sigs/headlamp/backend/pkg/config/config.go","line":300,"error":"flag: help requested","time":"2026-11-08T04:19:11Z","message":"parsing flags"}
{"level":"error","source":"github.com/kubernetes-sigs/headlamp/backend/cmd/server.go","line":55,"error":"error parsing flags: flag: help requested","time":"2026-11-08T04:19:11Z","message":"fetching config:%v"}
Options (72)
OptionDescriptionSource
-allow-kubeconfig-changesAllow Headlamp to make changes to the known kubeconfigs when needed.help
-app-name stringApplication name used in version output, the browser title, and Kubernetes User-Agent headers (default "Headlamp")help
-base-url stringBase URL path.help
-cache-enabledK8s cache in backendhelp
-cluster-inventory-label-selector stringLabel selector used to filter ClusterProfile resources for experimental/alpha Cluster Inventoryhelp
-cluster-inventory-namespaces stringComma-separated namespaces watched for experimental/alpha ClusterProfile resources;help
-cluster-inventory-no-crd-cache-ttl durationHow long to cache that an API server has no experimental/alpha ClusterProfile CRD (default 2h0m0s)help
-cluster-inventory-provider-file stringPath to the JSON configuration file for experimental/alpha Cluster Inventory access providershelp
-cluster-inventory-root-reconcile-interval durationInterval for reconciling experimental/alpha Cluster Inventory roots (default 5m0s)help
-default-dark-theme stringDefault theme to use when user prefers dark modehelp
-default-light-theme stringDefault theme to use when user prefers light modehelp
-devAllow connections from other originshelp
-enable-cluster-inventoryEnable experimental/alpha automatic discovery of clusters from ClusterProfile resourceshelp
-enable-dynamic-clustersEnable dynamic clusters, which stores stateless clusters in the frontend.help
-enable-helmEnable Helm operationshelp
-force-theme stringForce a specific theme, overriding user preferenceshelp
-html-static-dir stringStatic HTML directory to servehelp
-in-clusterSet when running from a k8s clusterhelp
-in-cluster-context-name stringName to use for the in-cluster Kubernetes context.help
-insecure-sslAccept/Ignore all server SSL certificateshelp
-kubeconfig stringAbsolute path to the kubeconfig filehelp
-kubeconfig-dir stringDirectory for Headlamp-managed kubeconfig fileshelp
-listen-addr stringAddress to listen on;help
-log-level stringSet backend log verbosity.help
-me-email-path stringComma separated JMESPath expressions used to read email from the JWT payload (default "email")help
-me-groups-path stringComma separated JMESPath expressions used to read groups from the JWT payload (default "groups,realm_access.roles")help
-me-user-info-url stringURL to fetch additional user info for the /me endpoint.help
-me-username-path stringComma separated JMESPath expressions used to read username from the JWT payload (default "preferred_username,upn,username,name")help
-metrics-enabledEnable metrics collectionhelp
-no-browserDisable automatically opening the browser when using embedded frontendhelp
-node-shell-image stringDefault image to use when creating node shell podshelp
-node-shell-namespace stringDefault namespace to use when creating node shell podshelp
-oidc-auto-loginAutomatic Redirect to OIDC providerhelp
-oidc-ca-file stringCA file for OIDChelp
-oidc-callback-url stringOIDC callback URL and trusted logout return originhelp
-oidc-client-id stringClientID for OIDChelp
-oidc-client-secret stringClientSecret for OIDChelp
-oidc-idp-issuer-url stringIdentity provider issuer URL for OIDChelp
-oidc-scopes stringA comma separated list of scopes needed from the OIDC provider (default "profile,email")help
-oidc-skip-logoutSkip logout from OIDC providerhelp
-oidc-skip-tls-verifySkip TLS verification for OIDChelp
-oidc-use-access-tokenSetup oidc to pass through the access_token instead of the default id_tokenhelp
-oidc-use-cookieEnable OIDC cookie usage even when not running in-clusterhelp
-oidc-use-pkceUse PKCE (Proof Key for Code Exchange) for enhanced security in OIDC flowhelp
-oidc-use-token-broadcastAfter a successful OIDC login, also set the auth cookie for other kubeconfig contexts whose OIDC auth-provider has the same idp-issuer-url and client-id.help
-oidc-validator-client-id stringOverride ClientID for OIDC during validationhelp
-oidc-validator-idp-issuer-url stringOverride Identity provider issuer URL for OIDC during validationhelp
-otlp-endpoint stringOTLP collector endpoint (default "localhost:4317")help
-plugins-dir stringSpecify the plugins directory to build the backend with (default "/tmp/.config/Headlamp/plugins")help
-pod-debug-image stringDefault image to use when creating pod debug containershelp
-port uintPort to listen from (default 4466)help
-proxy-authEnable bypass of authentication when identity-aware proxy headers are presenthelp
-proxy-auth-email-header stringHeader name to read the authenticated email from (default "X-Forwarded-Email")help
-proxy-auth-group-header stringHeader name to read the authenticated groups from (default "X-Forwarded-Group")help
-proxy-auth-token-header stringHeader name to read the proxy Id token from (default "X-Forwarded-Id-Token")help
-proxy-auth-username-header stringHeader name to read the authenticated username from (default "X-Forwarded-User")help
-proxy-urls stringAllow proxy requests to specified URLshelp
-sampling-rate floatSampling rate for traces (default 1)help
-service-account-token-path stringPath to the service account token.help
-service-name stringService name for telemetry (default "headlamp")help
-service-version stringService version for telemetry (default "0.30.0")help
-session-ttl intThe time in seconds for the session to be valid(Default: 86400/24h, Min: 1 , Max: 31536000/1yr ) (default 86400)help
-skipped-kube-contexts stringContext name which should be ignored in kubeconfig filehelp
-stdout-trace-enabledEnable tracing output to stdouthelp
-tls-cert-path stringCertificate for serving TLShelp
-tls-key-path stringKey for serving TLShelp
-tracing-enabledEnable distributed tracinghelp
-unsafe-use-service-account-tokenUNSAFE: use the pod's service account token to authenticate all users in-cluster.help
-use-otlp-httpUse HTTP instead of gRPC for OTLP exporthelp
-user-plugins-dir stringSpecify the user-installed plugins directory (default "/tmp/.config/Headlamp/user-plugins")help
-versionPrint version information and exithelp
-watch-plugins-changesReloads plugins when there are changes to them or their directory (default true)help

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.