docker/cli ยท error

invalid restart policy: unknown policy '%s' (must be one of

Error message

invalid restart policy: unknown policy '%s' (must be one of '%s', '%s', '%s', or '%s')

What it means

Error "invalid restart policy: unknown policy '%s' (must be one of '%s', '%s', '%s', or '%s')" thrown in docker/cli.

Source

Thrown at cli/compose/convert/service.go:522

		p := uint64(i)
		return &p
	}

	switch policy.Name {
	case container.RestartPolicyDisabled, "":
		return nil, nil
	case container.RestartPolicyAlways, container.RestartPolicyUnlessStopped:
		return &swarm.RestartPolicy{
			Condition:   swarm.RestartPolicyConditionAny,
			MaxAttempts: uint64Ptr(policy.MaximumRetryCount),
		}, nil
	case container.RestartPolicyOnFailure:
		return &swarm.RestartPolicy{
			Condition:   swarm.RestartPolicyConditionOnFailure,
			MaxAttempts: uint64Ptr(policy.MaximumRetryCount),
		}, nil
	default:
		return nil, fmt.Errorf("invalid restart policy: unknown policy '%s' (must be one of '%s', '%s', '%s', or '%s')",
			policy.Name, container.RestartPolicyDisabled, container.RestartPolicyAlways, container.RestartPolicyOnFailure, container.RestartPolicyUnlessStopped,
		)
	}
}

func convertUpdateConfig(source *composetypes.UpdateConfig) *swarm.UpdateConfig {
	if source == nil {
		return nil
	}
	parallel := uint64(1)
	if source.Parallelism != nil {
		parallel = *source.Parallelism
	}
	return &swarm.UpdateConfig{
		Parallelism:     parallel,
		Delay:           time.Duration(source.Delay),
		FailureAction:   swarm.FailureAction(source.FailureAction),
		Monitor:         time.Duration(source.Monitor),

View on GitHub (pinned to e9452d6e78)

When it happens

Trigger: Thrown at cli/compose/convert/service.go:522 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/cc212b7a5c3e9269.json. Report an issue: GitHub.