require "./api_client_wrapper"
require "./containers"
require "./images"
require "./volumes"
# A client for communicating with a Docker server.
#
# Provides the main entrypoint for common interaction with a docker instance.
class Docker::Client
include Docker::ApiClientWrapper
property api_version : String = "latest"
# Creates a new instance for the passed *base_url*
def initialize(base_url = Docker::Api::ApiClient::DEFAULT_URL, @api_version = "latest")
@client = Docker::Api::ApiClient.new base_url, @api_version
end
# Provides access to container management.
def containers
Containers.new @client
end
# Provides access to image management.
def images
Images.new @client
end
# Provides access to volume management.
def volumes
Volumes.new @client
end
end