Skip to content

bind dev create

Synopsis

Create a complete development environment for kube-bind using kind clusters.

This command will:

  • Create a kind cluster configured for kube-bind development
  • Add kube-bind.dev.local to /etc/hosts (with sudo prompts if needed)
  • Install kube-bind backend helm chart (default: OCI chart from ghcr.io)
  • Configure necessary port mappings (8443, 15021)

The backend chart can be sourced from:

  • OCI registry (default): oci://ghcr.io/kube-bind/charts/backend
  • Local filesystem: --chart-path ./deploy/charts/backend
  • Custom OCI registry: --chart-path oci://custom.registry/charts/backend
bind dev create [flags]

Examples

# Create a development environment with kind cluster and default OCI chart
kubectl bind dev create

# Create a development environment with custom provider cluster name
kubectl bind dev create --provider-cluster-name my-provider

# Create with custom chart path (local development)
kubectl bind dev create --chart-path ../deploy/charts/backend

# Create with specific chart version
kubectl bind dev create --chart-version 0.1.0

# Create with custom OCI chart
kubectl bind dev create --chart-path oci://registry.example.com/charts/backend --chart-version 1.0.0

Options

      --as-uid string                        UID to impersonate for the operation
      --certificate-authority string         Path to a cert file for the certificate authority
      --chart-path string                    Helm chart path or OCI registry URL (default "oci://ghcr.io/kube-bind/charts/backend")
      --chart-version string                 Helm chart version (default "v0.6.0")
      --cluster string                       The kube-bind cluster name to use (overrides kube-bind config current cluster)
      --config-file string                   Path to the kube-bind configuration file
      --consumer-cluster-name string         Name of the consumer cluster in dev mode (default "kind-consumer")
      --context string                       The name of the kubeconfig context to use
      --disable-compression                  If true, opt-out of response compression for all requests to the server
  -h, --help                                 help for create
      --image string                         kube-bind backend image to use in dev mode (default "ghcr.io/kube-bind/backend")
      --insecure-skip-tls-verify             Skip TLS certificate verification (not recommended)
      --kind-network string                  kind network to use in dev mode (default "kube-bind-dev")
      --kubeconfig string                    path to the kubeconfig file
      --log-flush-frequency duration         Maximum number of seconds between log flushes (default 5s)
      --log-text-info-buffer-size quantity   [Alpha] In text format with split output streams, the info messages can be buffered for a while to increase performance. The default value of zero bytes disables buffering. The size can be specified as number of bytes (512), multiples of 1000 (1K), multiples of 1024 (2Ki), or powers of those (3M, 4G, 5Mi, 6Gi). Enable the LoggingAlphaOptions feature gate to use this.
      --log-text-split-stream                [Alpha] In text format, write error messages to stderr and info messages to stdout. The default is to write a single stream to stdout. Enable the LoggingAlphaOptions feature gate to use this.
      --logging-format string                Sets the log format. Permitted formats: "text". (default "text")
  -n, --namespace string                     If present, the namespace scope for this CLI request
      --password string                      Password for basic authentication to the API server
      --provider-cluster-name string         Name of the provider cluster in dev mode (default "kind-provider")
      --proxy-url string                     If provided, this URL will be used to connect via proxy
      --server string                        The kube-bind server name to use (overrides kube-bind config current server)
      --tag string                           kube-bind backend image tag to use in dev mode (default "main")
      --tls-server-name string               If provided, this name will be used to validate server certificate. If this is not provided, hostname used to contact the server is used.
      --token string                         Bearer token for authentication to the API server
      --user string                          The name of the kubeconfig user to use
      --username string                      Username for basic authentication to the API server
  -v, --v Level                              number for the log level verbosity
      --vmodule pattern=N,...                comma-separated list of pattern=N settings for file-filtered logging (only works for text log format)
      --wait-for-ready-timeout duration      Timeout for waiting for the cluster to be ready (default 2m0s)

Options inherited from parent commands

      --add_dir_header                   If true, adds the file directory to the header of the log messages
      --alsologtostderr                  log to standard error as well as files (no effect when -logtostderr=true)
      --log_backtrace_at traceLocation   when logging hits line file:N, emit a stack trace (default :0)
      --log_dir string                   If non-empty, write log files in this directory (no effect when -logtostderr=true)
      --log_file string                  If non-empty, use this log file (no effect when -logtostderr=true)
      --log_file_max_size uint           Defines the maximum size a log file can grow to (no effect when -logtostderr=true). Unit is megabytes. If the value is 0, the maximum file size is unlimited. (default 1800)
      --logtostderr                      log to standard error instead of files (default true)
      --one_output                       If true, only write logs to their native severity level (vs also writing to each lower severity level; no effect when -logtostderr=true)
      --skip_headers                     If true, avoid header prefixes in the log messages
      --skip_log_headers                 If true, avoid headers when opening log files (no effect when -logtostderr=true)
      --stderrthreshold severity         logs at or above this threshold go to stderr when writing to files and stderr (no effect when -logtostderr=true or -alsologtostderr=true) (default 2)

See Also

  • bind dev – Manage development environment for kube-bind