docker/cli ยท error

invalid availability %q, only active, pause and drain are su

Error message

invalid availability %q, only active, pause and drain are supported

What it means

Error "invalid availability %q, only active, pause and drain are supported" thrown in docker/cli.

Source

Thrown at cli/command/swarm/join.go:65

	flags.Var(&opts.listenAddr, flagListenAddr, `Listen address (format: "<ip|interface>[:port]")`)
	flags.StringVar(&opts.advertiseAddr, flagAdvertiseAddr, "", `Advertised address (format: "<ip|interface>[:port]")`)
	flags.StringVar(&opts.dataPathAddr, flagDataPathAddr, "", `Address or interface to use for data path traffic (format: "<ip|interface>")`)
	flags.SetAnnotation(flagDataPathAddr, "version", []string{"1.31"})
	flags.StringVar(&opts.token, flagToken, "", "Token for entry into the swarm")
	flags.StringVar(&opts.availability, flagAvailability, "active", `Availability of the node ("active", "pause", "drain")`)
	return cmd
}

func runJoin(ctx context.Context, dockerCLI command.Cli, flags *pflag.FlagSet, opts joinOptions) error {
	apiClient := dockerCLI.Client()

	var availability swarm.NodeAvailability
	if flags.Changed(flagAvailability) {
		switch a := swarm.NodeAvailability(strings.ToLower(opts.availability)); a {
		case swarm.NodeAvailabilityActive, swarm.NodeAvailabilityPause, swarm.NodeAvailabilityDrain:
			availability = a
		default:
			return fmt.Errorf("invalid availability %q, only active, pause and drain are supported", opts.availability)
		}
	}

	_, err := apiClient.SwarmJoin(ctx, client.SwarmJoinOptions{
		JoinToken:     opts.token,
		ListenAddr:    opts.listenAddr.String(),
		AdvertiseAddr: opts.advertiseAddr,
		DataPathAddr:  opts.dataPathAddr,
		RemoteAddrs:   []string{opts.remote},
		Availability:  availability,
	})
	if err != nil {
		return err
	}

	res, err := apiClient.Info(ctx, client.InfoOptions{})
	if err != nil {
		return err

View on GitHub (pinned to e9452d6e78)

When it happens

Trigger: Thrown at cli/command/swarm/join.go:65 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of docker/cli@e9452d6e78 (2026-08-01). Data as JSON: /data/errors/82e459df68365d37.json. Report an issue: GitHub.