Documentation ¶
Overview ¶
Package docker implements docker functionality.
Index ¶
- Constants
- func List(filters container.FilterBuilder) ([]*types.Node, error)
- type ContainerNotRunningError
- type LoadBalancer
- type Machine
- func (m *Machine) Address(ctx context.Context) (string, error)
- func (m *Machine) CheckForBootstrapSuccess(ctx context.Context) error
- func (m *Machine) ContainerName() string
- func (m *Machine) Create(ctx context.Context, role string, version *string, mounts []infrav1.Mount) error
- func (m *Machine) Delete(ctx context.Context) error
- func (m *Machine) ExecBootstrap(ctx context.Context, data string) error
- func (m *Machine) Exists() bool
- func (m *Machine) ImageVersion() string
- func (m *Machine) IsControlPlane() bool
- func (m *Machine) Name() string
- func (m *Machine) PreloadLoadImages(ctx context.Context, images []string) error
- func (m *Machine) ProviderID() string
- func (m *Machine) SetNodeProviderID(ctx context.Context) error
- type Manager
- func (m *Manager) CreateControlPlaneNode(ctx context.Context, name, image, clusterName, listenAddress string, ...) (*types.Node, error)
- func (m *Manager) CreateExternalLoadBalancerNode(ctx context.Context, name, image, clusterName, listenAddress string, ...) (*types.Node, error)
- func (m *Manager) CreateWorkerNode(ctx context.Context, name, image, clusterName string, mounts []v1alpha4.Mount, ...) (*types.Node, error)
Constants ¶
const ControlPlanePort = 6443
const DefaultNetwork = "kind"
const KubeadmContainerPort = 6443
Variables ¶
This section is empty.
Functions ¶
func List ¶
func List(filters container.FilterBuilder) ([]*types.Node, error)
List returns the list of container IDs for the kind "nodes", optionally filtered by docker ps filters https://docs.docker.com/engine/reference/commandline/ps/#filtering
Types ¶
type ContainerNotRunningError ¶
type ContainerNotRunningError struct {
Name string
}
ContainerNotRunningError is returned when trying to patch a container that is not running.
func (ContainerNotRunningError) Error ¶
func (cse ContainerNotRunningError) Error() string
Error returns the error string.
type LoadBalancer ¶
type LoadBalancer struct {
// contains filtered or unexported fields
}
LoadBalancer manages the load balancer for a specific docker cluster.
func NewLoadBalancer ¶
func NewLoadBalancer(cluster *clusterv1.Cluster, dockerCluster *v1alpha4.DockerCluster) (*LoadBalancer, error)
NewLoadBalancer returns a new helper for managing a docker loadbalancer with a given name.
func (*LoadBalancer) Create ¶
func (s *LoadBalancer) Create(ctx context.Context) error
Create creates a docker container hosting a load balancer for the cluster.
func (*LoadBalancer) Delete ¶
func (s *LoadBalancer) Delete(ctx context.Context) error
Delete the docker container hosting the cluster load balancer.
func (*LoadBalancer) IP ¶
func (s *LoadBalancer) IP(ctx context.Context) (string, error)
IP returns the load balancer IP address.
func (*LoadBalancer) UpdateConfiguration ¶
func (s *LoadBalancer) UpdateConfiguration(ctx context.Context) error
UpdateConfiguration updates the external load balancer configuration with new control plane nodes.
type Machine ¶
type Machine struct {
// contains filtered or unexported fields
}
Machine implement a service for managing the docker containers hosting a kubernetes nodes.
func ListMachinesByCluster ¶
func NewMachine ¶
func NewMachine(cluster *clusterv1.Cluster, machine, image string, labels map[string]string) (*Machine, error)
NewMachine returns a new Machine service for the given Cluster/DockerCluster pair.
func (*Machine) CheckForBootstrapSuccess ¶
CheckForBootstrapSuccess checks if bootstrap was successful by checking for existence of the sentinel file.
func (*Machine) ContainerName ¶
ContainerName return the name of the container for this machine.
func (*Machine) Create ¶
func (m *Machine) Create(ctx context.Context, role string, version *string, mounts []infrav1.Mount) error
Create creates a docker container hosting a Kubernetes node.
func (*Machine) ExecBootstrap ¶
ExecBootstrap runs bootstrap on a node, this is generally `kubeadm <init|join>`.
func (*Machine) ImageVersion ¶
ImageVersion returns the version of the image used or nil if not specified NOTE: Image version might be different from the Kubernetes version, because some characters allowed by semver (e.g. +) can't be used for image tags, so they are replaced with "_".
func (*Machine) IsControlPlane ¶
IsControlPlane returns true if the container for this machine is a control plane node.
func (*Machine) PreloadLoadImages ¶
func (*Machine) ProviderID ¶
ProviderID return the provider identifier for this machine.
type Manager ¶
type Manager struct{}