Documentation ¶
Index ¶
- type Pool
- func (d *Pool) BuildAndRun(name, dockerfilePath string, env []string) (*Resource, error)
- func (d *Pool) BuildAndRunWithOptions(dockerfilePath string, opts *RunOptions, hcOpts ...func(*dc.HostConfig)) (*Resource, error)
- func (d *Pool) Purge(r *Resource) error
- func (d *Pool) RemoveContainerByName(containerName string) error
- func (d *Pool) Retry(op func() error) error
- func (d *Pool) Run(repository, tag string, env []string) (*Resource, error)
- func (d *Pool) RunWithOptions(opts *RunOptions, hcOpts ...func(*dc.HostConfig)) (*Resource, error)
- type Resource
- type RunOptions
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Pool ¶
Pool represents a connection to the docker API and is used to create and remove docker images.
func NewPool ¶
NewPool creates a new pool. You can pass an empty string to use the default, which is taken from the environment variable DOCKER_HOST and DOCKER_URL, or from docker-machine if the environment variable DOCKER_MACHINE_NAME is set, or if neither is defined a sensible default for the operating system you are on. TLS pools are automatically configured if the DOCKER_CERT_PATH environment variable exists.
func NewTLSPool ¶
NewTLSPool creates a new pool given an endpoint and the certificate path. This is required for endpoints that require TLS communication.
func (*Pool) BuildAndRun ¶
BuildAndRun builds and starts a docker container
func (*Pool) BuildAndRunWithOptions ¶
func (d *Pool) BuildAndRunWithOptions(dockerfilePath string, opts *RunOptions, hcOpts ...func(*dc.HostConfig)) (*Resource, error)
BuildAndRunWithOptions builds and starts a docker container. Optional modifier functions can be passed in order to change the hostconfig values not covered in RunOptions
func (*Pool) RemoveContainerByName ¶
RemoveContainerByName find a container with the given name and removes it if present
func (*Pool) Retry ¶
Retry is an exponential backoff retry helper. You can use it to wait for e.g. mysql to boot up.
func (*Pool) Run ¶
Run starts a docker container.
pool.Run("mysql", "5.3", []string{"FOO=BAR", "BAR=BAZ"})
func (*Pool) RunWithOptions ¶
func (d *Pool) RunWithOptions(opts *RunOptions, hcOpts ...func(*dc.HostConfig)) (*Resource, error)
RunWithOptions starts a docker container. Optional modifier functions can be passed in order to change the hostconfig values not covered in RunOptions
pool.Run(&RunOptions{Repository: "mongo", Cmd: []string{"mongod", "--smallfiles"}})
pool.Run(&RunOptions{Repository: "mongo", Cmd: []string{"mongod", "--smallfiles"}}, func(hostConfig *dc.HostConfig) { hostConfig.ShmSize = shmemsize })
type Resource ¶
Resource represents a docker container.
func (*Resource) Close ¶
Close removes a container and linked volumes from docker by calling pool.Purge.
func (*Resource) Expire ¶
Expire sets a resource's associated container to terminate after a period has passed
func (*Resource) GetBoundIP ¶
func (*Resource) GetHostPort ¶
GetHostPort returns a resource's published port with an address.
type RunOptions ¶
type RunOptions struct { Hostname string Name string Repository string Tag string Env []string Entrypoint []string Cmd []string Mounts []string Links []string ExposedPorts []string ExtraHosts []string CapAdd []string SecurityOpt []string DNS []string WorkingDir string NetworkID string Labels map[string]string Auth dc.AuthConfiguration PortBindings map[dc.Port][]dc.PortBinding Privileged bool }
RunOptions is used to pass in optional parameters when running a container.
Directories ¶
Path | Synopsis |
---|---|
Package docker provides a client for the Docker remote API.
|
Package docker provides a client for the Docker remote API. |
pkg/pools
Package pools provides a collection of pools which provide various data types with buffers.
|
Package pools provides a collection of pools which provide various data types with buffers. |
pkg/term
Package term provides structures and helper functions to work with terminal (state, sizes).
|
Package term provides structures and helper functions to work with terminal (state, sizes). |
types
Package types is used for API stability in the types and response to the consumers of the API stats endpoint.
|
Package types is used for API stability in the types and response to the consumers of the API stats endpoint. |
types/filters
Package filters provides tools for encoding a mapping of keys to a set of multiple values.
|
Package filters provides tools for encoding a mapping of keys to a set of multiple values. |
types/versions/v1p19
Package v1p19 provides specific API types for the API version 1, patch 19.
|
Package v1p19 provides specific API types for the API version 1, patch 19. |
types/versions/v1p20
Package v1p20 provides specific API types for the API version 1, patch 20.
|
Package v1p20 provides specific API types for the API version 1, patch 20. |