Documentation
¶
Overview ¶
Package docker contains Docker-specific helpers used by the updater.
Package utils provides shared updater helper utilities.
Index ¶
- Constants
- func ComposeProjectLabel(labels map[string]string) string
- func ComposeServiceLabel(labels map[string]string) string
- func ConnectContainerExtraNetworksForAPI(ctx context.Context, dockerClient client.APIClient, containerID string, ...) error
- func ContainerCreateWithCompatibility(ctx context.Context, dockerClient client.APIClient, ...) (client.ContainerCreateResult, error)
- func ContainerCreateWithCompatibilityForAPIVersion(ctx context.Context, dockerClient client.APIClient, ...) (client.ContainerCreateResult, error)
- func ContainerInspectWithCompatibility(ctx context.Context, apiClient client.APIClient, containerID string, ...) (client.ContainerInspectResult, error)
- func ContainerNameFromNames(names []string) string
- func ContainerSummaryName(cnt container.Summary) string
- func DetectAPIVersion(ctx context.Context, dockerClient client.APIClient) string
- func ExtractRegistryHost(imageRef string) string
- func GetRegistryAddress(imageRef string) (string, error)
- func IsAPIVersionAtLeast(current, minimum string) bool
- func IsRegistryMatch(left, right string) bool
- func NormalizeRegistryForComparison(rawURL string) string
- func NormalizeRegistryURL(rawURL string) string
- func PrepareContainerCreateOptionsForAPI(options client.ContainerCreateOptions, apiVersion string) (client.ContainerCreateOptions, map[string]*network.EndpointSettings)
- func SanitizeContainerCreateEndpointSettingsForAPI(endpoints map[string]*network.EndpointSettings, apiVersion string) map[string]*network.EndpointSettings
- func SortRegistryKeys(values map[string]string) []string
- func SupportsCreateMultiEndpointNetworking(apiVersion string) bool
- func SupportsCreatePerNetworkMACAddress(apiVersion string) bool
- type EngineCompatibilityInfo
Constants ¶
const ( // ComposeProjectLabelKey is Docker Compose's project label key. ComposeProjectLabelKey = "com.docker.compose.project" // ComposeServiceLabelKey is Docker Compose's service label key. ComposeServiceLabelKey = "com.docker.compose.service" )
Variables ¶
This section is empty.
Functions ¶
func ComposeProjectLabel ¶
ComposeProjectLabel returns the trimmed Docker Compose project label.
func ComposeServiceLabel ¶
ComposeServiceLabel returns the trimmed Docker Compose service label.
func ConnectContainerExtraNetworksForAPI ¶
func ConnectContainerExtraNetworksForAPI(ctx context.Context, dockerClient client.APIClient, containerID string, endpoints map[string]*network.EndpointSettings) error
ConnectContainerExtraNetworksForAPI attaches endpoints withheld from ContainerCreate.
func ContainerCreateWithCompatibility ¶
func ContainerCreateWithCompatibility(ctx context.Context, dockerClient client.APIClient, options client.ContainerCreateOptions) (client.ContainerCreateResult, error)
ContainerCreateWithCompatibility applies Docker API compatibility shims before create.
func ContainerCreateWithCompatibilityForAPIVersion ¶
func ContainerCreateWithCompatibilityForAPIVersion(ctx context.Context, dockerClient client.APIClient, options client.ContainerCreateOptions, apiVersion string) (client.ContainerCreateResult, error)
ContainerCreateWithCompatibilityForAPIVersion applies Docker API compatibility shims before create.
func ContainerInspectWithCompatibility ¶
func ContainerInspectWithCompatibility(ctx context.Context, apiClient client.APIClient, containerID string, options client.ContainerInspectOptions) (client.ContainerInspectResult, error)
ContainerInspectWithCompatibility wraps Docker inspect and validates the client.
func ContainerNameFromNames ¶
ContainerNameFromNames returns Docker's first container name without the leading slash.
func ContainerSummaryName ¶
ContainerSummaryName returns a displayable container name from a Docker summary.
func DetectAPIVersion ¶
DetectAPIVersion returns the configured client API version or daemon API version.
func ExtractRegistryHost ¶
ExtractRegistryHost extracts the registry host from an image reference.
func GetRegistryAddress ¶
GetRegistryAddress returns the Docker daemon auth address for an image reference.
func IsAPIVersionAtLeast ¶
IsAPIVersionAtLeast compares Docker API versions numerically.
func IsRegistryMatch ¶
IsRegistryMatch reports whether two registry host values describe the same registry.
func NormalizeRegistryForComparison ¶
NormalizeRegistryForComparison canonicalizes registry hosts for equality checks.
func NormalizeRegistryURL ¶
NormalizeRegistryURL canonicalizes registry URLs for Docker auth config lookups.
func PrepareContainerCreateOptionsForAPI ¶
func PrepareContainerCreateOptionsForAPI(options client.ContainerCreateOptions, apiVersion string) (client.ContainerCreateOptions, map[string]*network.EndpointSettings)
PrepareContainerCreateOptionsForAPI rewrites create options for older daemon APIs.
func SanitizeContainerCreateEndpointSettingsForAPI ¶
func SanitizeContainerCreateEndpointSettingsForAPI(endpoints map[string]*network.EndpointSettings, apiVersion string) map[string]*network.EndpointSettings
SanitizeContainerCreateEndpointSettingsForAPI clones endpoint settings and strips unsupported fields.
func SortRegistryKeys ¶
SortRegistryKeys returns a deterministic copy of registry map keys.
func SupportsCreateMultiEndpointNetworking ¶
SupportsCreateMultiEndpointNetworking reports whether create supports multiple endpoints.
func SupportsCreatePerNetworkMACAddress ¶
SupportsCreatePerNetworkMACAddress reports whether Docker create supports endpoint MAC addresses.
Types ¶
type EngineCompatibilityInfo ¶
EngineCompatibilityInfo describes recreate-time engine compatibility inputs.
func PrepareRecreateHostConfigForEngine ¶
func PrepareRecreateHostConfigForEngine(ctx context.Context, dockerClient *client.Client, hostConfig *container.HostConfig) (*container.HostConfig, bool, EngineCompatibilityInfo, error)
PrepareRecreateHostConfigForEngine clones hostConfig and removes incompatible fields.