package cluster
import "github.com/docker/cli/components/engine/daemon/cluster"
Index ¶
- type Cluster
- func New(config Config) (*Cluster, error)
- func (c *Cluster) AttachNetwork(target string, containerID string, addresses []string) (*network.NetworkingConfig, error)
- func (c *Cluster) Cleanup()
- func (c *Cluster) CreateConfig(s types.ConfigSpec) (string, error)
- func (c *Cluster) CreateNetwork(s apitypes.NetworkCreateRequest) (string, error)
- func (c *Cluster) CreateSecret(s types.SecretSpec) (string, error)
- func (c *Cluster) CreateService(s types.ServiceSpec, encodedAuth string, queryRegistry bool) (*apitypes.ServiceCreateResponse, error)
- func (c *Cluster) DetachNetwork(target string, containerID string) error
- func (c *Cluster) GetAdvertiseAddress() string
- func (c *Cluster) GetConfig(input string) (types.Config, error)
- func (c *Cluster) GetConfigs(options apitypes.ConfigListOptions) ([]types.Config, error)
- func (c *Cluster) GetDataPathAddress() string
- func (c *Cluster) GetListenAddress() string
- func (c *Cluster) GetLocalAddress() string
- func (c *Cluster) GetNetwork(input string) (apitypes.NetworkResource, error)
- func (c *Cluster) GetNetworks() ([]apitypes.NetworkResource, error)
- func (c *Cluster) GetNetworksByName(name string) ([]apitypes.NetworkResource, error)
- func (c *Cluster) GetNode(input string) (types.Node, error)
- func (c *Cluster) GetNodes(options apitypes.NodeListOptions) ([]types.Node, error)
- func (c *Cluster) GetRemoteAddressList() []string
- func (c *Cluster) GetSecret(input string) (types.Secret, error)
- func (c *Cluster) GetSecrets(options apitypes.SecretListOptions) ([]types.Secret, error)
- func (c *Cluster) GetService(input string, insertDefaults bool) (types.Service, error)
- func (c *Cluster) GetServices(options apitypes.ServiceListOptions) ([]types.Service, error)
- func (c *Cluster) GetTask(input string) (types.Task, error)
- func (c *Cluster) GetTasks(options apitypes.TaskListOptions) ([]types.Task, error)
- func (c *Cluster) GetUnlockKey() (string, error)
- func (c *Cluster) Info() types.Info
- func (c *Cluster) Init(req types.InitRequest) (string, error)
- func (c *Cluster) Inspect() (types.Swarm, error)
- func (c *Cluster) IsAgent() bool
- func (c *Cluster) IsManager() bool
- func (c *Cluster) Join(req types.JoinRequest) error
- func (c *Cluster) Leave(force bool) error
- func (c *Cluster) ListenClusterEvents() <-chan lncluster.ConfigEventType
- func (c *Cluster) RemoveConfig(input string) error
- func (c *Cluster) RemoveNetwork(input string) error
- func (c *Cluster) RemoveNode(input string, force bool) error
- func (c *Cluster) RemoveSecret(input string) error
- func (c *Cluster) RemoveService(input string) error
- func (c *Cluster) SendClusterEvent(event lncluster.ConfigEventType)
- func (c *Cluster) ServiceLogs(ctx context.Context, selector *backend.LogSelector, config *apitypes.ContainerLogsOptions) (<-chan *backend.LogMessage, error)
- func (c *Cluster) Start() error
- func (c *Cluster) UnlockSwarm(req types.UnlockRequest) error
- func (c *Cluster) Update(version uint64, spec types.Spec, flags types.UpdateFlags) error
- func (c *Cluster) UpdateAttachment(target, containerID string, config *network.NetworkingConfig) error
- func (c *Cluster) UpdateConfig(input string, version uint64, spec types.ConfigSpec) error
- func (c *Cluster) UpdateNode(input string, version uint64, spec types.NodeSpec) error
- func (c *Cluster) UpdateSecret(input string, version uint64, spec types.SecretSpec) error
- func (c *Cluster) UpdateService(serviceIDOrName string, version uint64, spec types.ServiceSpec, flags apitypes.ServiceUpdateOptions, queryRegistry bool) (*apitypes.ServiceUpdateResponse, error)
- func (c *Cluster) WaitForDetachment(ctx context.Context, networkName, networkID, taskID, containerID string) error
- type Config
- type NetworkSubnetsProvider
Types ¶
type Cluster ¶
type Cluster struct {
// contains filtered or unexported fields
}
Cluster provides capabilities to participate in a cluster as a worker or a manager.
func New ¶
New creates a new Cluster instance using provided config.
func (*Cluster) AttachNetwork ¶
func (c *Cluster) AttachNetwork(target string, containerID string, addresses []string) (*network.NetworkingConfig, error)
AttachNetwork generates an attachment request towards the manager.
func (*Cluster) Cleanup ¶
func (c *Cluster) Cleanup()
Cleanup stops active swarm node. This is run before daemon shutdown.
func (*Cluster) CreateConfig ¶
func (c *Cluster) CreateConfig(s types.ConfigSpec) (string, error)
CreateConfig creates a new config in a managed swarm cluster.
func (*Cluster) CreateNetwork ¶
func (c *Cluster) CreateNetwork(s apitypes.NetworkCreateRequest) (string, error)
CreateNetwork creates a new cluster managed network.
func (*Cluster) CreateSecret ¶
func (c *Cluster) CreateSecret(s types.SecretSpec) (string, error)
CreateSecret creates a new secret in a managed swarm cluster.
func (*Cluster) CreateService ¶
func (c *Cluster) CreateService(s types.ServiceSpec, encodedAuth string, queryRegistry bool) (*apitypes.ServiceCreateResponse, error)
CreateService creates a new service in a managed swarm cluster.
func (*Cluster) DetachNetwork ¶
DetachNetwork unblocks the waiters waiting on WaitForDetachment so that a request to detach can be generated towards the manager.
func (*Cluster) GetAdvertiseAddress ¶
GetAdvertiseAddress returns the remotely reachable address of this node.
func (*Cluster) GetConfig ¶
GetConfig returns a config from a managed swarm cluster
func (*Cluster) GetConfigs ¶
GetConfigs returns all configs of a managed swarm cluster.
func (*Cluster) GetDataPathAddress ¶
GetDataPathAddress returns the address to be used for the data path traffic, if specified.
func (*Cluster) GetListenAddress ¶
GetListenAddress returns the listen address.
func (*Cluster) GetLocalAddress ¶
GetLocalAddress returns the local address.
func (*Cluster) GetNetwork ¶
func (c *Cluster) GetNetwork(input string) (apitypes.NetworkResource, error)
GetNetwork returns a cluster network by an ID.
func (*Cluster) GetNetworks ¶
func (c *Cluster) GetNetworks() ([]apitypes.NetworkResource, error)
GetNetworks returns all current cluster managed networks.
func (*Cluster) GetNetworksByName ¶
func (c *Cluster) GetNetworksByName(name string) ([]apitypes.NetworkResource, error)
GetNetworksByName returns cluster managed networks by name. It is ok to have multiple networks here. #18864
func (*Cluster) GetNode ¶
GetNode returns a node based on an ID.
func (*Cluster) GetNodes ¶
GetNodes returns a list of all nodes known to a cluster.
func (*Cluster) GetRemoteAddressList ¶
GetRemoteAddressList returns the advertise address for each of the remote managers if available.
func (*Cluster) GetSecret ¶
GetSecret returns a secret from a managed swarm cluster
func (*Cluster) GetSecrets ¶
GetSecrets returns all secrets of a managed swarm cluster.
func (*Cluster) GetService ¶
GetService returns a service based on an ID or name.
func (*Cluster) GetServices ¶
GetServices returns all services of a managed swarm cluster.
func (*Cluster) GetTask ¶
GetTask returns a task by an ID.
func (*Cluster) GetTasks ¶
GetTasks returns a list of tasks matching the filter options.
func (*Cluster) GetUnlockKey ¶
GetUnlockKey returns the unlock key for the swarm.
func (*Cluster) Info ¶
Info returns information about the current cluster state.
func (*Cluster) Init ¶
func (c *Cluster) Init(req types.InitRequest) (string, error)
Init initializes new cluster from user provided request.
func (*Cluster) Inspect ¶
Inspect retrieves the configuration properties of a managed swarm cluster.
func (*Cluster) IsAgent ¶
IsAgent returns true if Cluster is participating as a worker/agent.
func (*Cluster) IsManager ¶
IsManager returns true if Cluster is participating as a manager.
func (*Cluster) Join ¶
func (c *Cluster) Join(req types.JoinRequest) error
Join makes current Cluster part of an existing swarm cluster.
func (*Cluster) Leave ¶
Leave shuts down Cluster and removes current state.
func (*Cluster) ListenClusterEvents ¶
func (c *Cluster) ListenClusterEvents() <-chan lncluster.ConfigEventType
ListenClusterEvents returns a channel that receives messages on cluster participation changes. todo: make cancelable and accessible to multiple callers
func (*Cluster) RemoveConfig ¶
RemoveConfig removes a config from a managed swarm cluster.
func (*Cluster) RemoveNetwork ¶
RemoveNetwork removes a cluster network.
func (*Cluster) RemoveNode ¶
RemoveNode removes a node from a cluster
func (*Cluster) RemoveSecret ¶
RemoveSecret removes a secret from a managed swarm cluster.
func (*Cluster) RemoveService ¶
RemoveService removes a service from a managed swarm cluster.
func (*Cluster) SendClusterEvent ¶
func (c *Cluster) SendClusterEvent(event lncluster.ConfigEventType)
SendClusterEvent allows to send cluster events on the configEvent channel TODO This method should not be exposed. Currently it is used to notify the network controller that the keys are available
func (*Cluster) ServiceLogs ¶
func (c *Cluster) ServiceLogs(ctx context.Context, selector *backend.LogSelector, config *apitypes.ContainerLogsOptions) (<-chan *backend.LogMessage, error)
ServiceLogs collects service logs and writes them back to `config.OutStream`
func (*Cluster) Start ¶
Start the Cluster instance TODO The split between New and Start can be join again when the SendClusterEvent method is no longer required
func (*Cluster) UnlockSwarm ¶
func (c *Cluster) UnlockSwarm(req types.UnlockRequest) error
UnlockSwarm provides a key to decrypt data that is encrypted at rest.
func (*Cluster) Update ¶
Update updates configuration of a managed swarm cluster.
func (*Cluster) UpdateAttachment ¶
func (c *Cluster) UpdateAttachment(target, containerID string, config *network.NetworkingConfig) error
UpdateAttachment signals the attachment config to the attachment waiter who is trying to start or attach the container to the network.
func (*Cluster) UpdateConfig ¶
UpdateConfig updates a config in a managed swarm cluster. Note: this is not exposed to the CLI but is available from the API only
func (*Cluster) UpdateNode ¶
UpdateNode updates existing nodes properties.
func (*Cluster) UpdateSecret ¶
UpdateSecret updates a secret in a managed swarm cluster. Note: this is not exposed to the CLI but is available from the API only
func (*Cluster) UpdateService ¶
func (c *Cluster) UpdateService(serviceIDOrName string, version uint64, spec types.ServiceSpec, flags apitypes.ServiceUpdateOptions, queryRegistry bool) (*apitypes.ServiceUpdateResponse, error)
UpdateService updates existing service to match new properties.
func (*Cluster) WaitForDetachment ¶
func (c *Cluster) WaitForDetachment(ctx context.Context, networkName, networkID, taskID, containerID string) error
WaitForDetachment waits for the container to stop or detach from the network.
type Config ¶
type Config struct { Root string Name string Backend executorpkg.Backend PluginBackend plugin.Backend NetworkSubnetsProvider NetworkSubnetsProvider // DefaultAdvertiseAddr is the default host/IP or network interface to use // if no AdvertiseAddr value is specified. DefaultAdvertiseAddr string // path to store runtime state, such as the swarm control socket RuntimeRoot string // WatchStream is a channel to pass watch API notifications to daemon WatchStream chan *swarmapi.WatchMessage }
Config provides values for Cluster.
type NetworkSubnetsProvider ¶
NetworkSubnetsProvider exposes functions for retrieving the subnets of networks managed by Docker, so they can be filtered.
Source Files ¶
cluster.go configs.go errors.go filters.go helpers.go listen_addr.go listen_addr_others.go networks.go noderunner.go nodes.go secrets.go services.go swarm.go tasks.go utils.go
Directories ¶
- Version
- v17.11.0-ce+incompatible
- Published
- Nov 20, 2017
- Platform
- darwin/amd64
- Imports
- 38 packages
- Last checked
- 2 minutes ago –
Tools for package owners.