Documentation
¶
Index ¶
- type Client
- func (client *Client) ClientVersion() (*ClientVersion, error)
- func (client *Client) Host() string
- func (client *Client) Path() string
- func (client *Client) Proto() string
- func (client *Client) Run(image string, args []string, option RunOption) *posix.Cmd
- func (client *Client) ServerVersion() (*ServerVersion, error)
- func (client *Client) Sock() *string
- func (client *Client) Version(option VersionOption) *posix.Cmd
- type ClientVersion
- type RunOption
- type ServerVersion
- type VersionOption
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Clients provide operations on Docker commands.
func NewClient ¶
NewClient creates a new Client.
Example ¶
package main import ( "fmt" "github.com/k-kinzal/aliases/pkg/docker" ) func main() { client, err := docker.NewClient() if err != nil { panic(err) } fmt.Println(client.Host()) }
Output: unix:///tmp/docker.sock
func (*Client) ClientVersion ¶
func (client *Client) ClientVersion() (*ClientVersion, error)
ClientVersion returns client info.
func (*Client) Host ¶
Host return DOCKER_HOST
Example ¶
package main import ( "fmt" "github.com/k-kinzal/aliases/pkg/docker" ) func main() { client, err := docker.NewClient() if err != nil { panic(err) } fmt.Println(client.Host()) }
Output: unix:///tmp/docker.sock
func (*Client) Proto ¶
Proto returns the protocol of DOCKER_HOST
Example ¶
package main import ( "fmt" "github.com/k-kinzal/aliases/pkg/docker" ) func main() { client, err := docker.NewClient() if err != nil { panic(err) } fmt.Println(client.Proto()) }
Output: unix
func (*Client) Run ¶
Run returns a command that can execute docker run.
Example ¶
package main import ( "fmt" "github.com/k-kinzal/aliases/pkg/docker" ) func ptr(s string) *string { return &s } func main() { client, err := docker.NewClient() if err != nil { panic(err) } opt := docker.RunOption{ Env: map[string]string{ "FOO": "bar", }, Interactive: ptr("true"), Rm: ptr("true"), TTY: ptr("true"), } cmd := client.Run("alpine", []string{"sh", "-c", "echo 1"}, opt) fmt.Println(cmd) }
Output: docker run --env FOO="bar" --interactive --rm --tty alpine sh -c "echo 1"
func (*Client) ServerVersion ¶
func (client *Client) ServerVersion() (*ServerVersion, error)
ServerVersion returns server info.
func (*Client) Sock ¶
Sock returns the path to socket for docker.
Example ¶
package main import ( "fmt" "github.com/k-kinzal/aliases/pkg/docker" ) func main() { client, err := docker.NewClient() if err != nil { panic(err) } fmt.Println(*client.Sock()) }
Output: /tmp/docker.sock
func (*Client) Version ¶
func (client *Client) Version(option VersionOption) *posix.Cmd
Version returns a command that can execute docker version.
Example ¶
package main import ( "fmt" "github.com/k-kinzal/aliases/pkg/docker" ) func main() { client, err := docker.NewClient() if err != nil { panic(err) } cmd := client.Version(docker.VersionOption{}) fmt.Println(cmd) }
Output: docker version
type ClientVersion ¶
type ClientVersion struct { Version string APIVersion string GOVersion string GitCommit string Build string OS string Arch string }
ClientVersion is client info.
Client: Docker Engine - Community
Version: 18.09.1 API version: 1.39 Go version: go1.10.6 Git commit: 4c52b90 Built: Wed Jan 9 19:33:12 2019 OS/Arch: darwin/amd64 Experimental: false
type RunOption ¶
type RunOption struct { AddHost []string Attach []string BlkioWeight *string BlkioWeightDevice []string CIDFile *string CPUPeriod *string CPUQuota *string CPURtPeriod *string CPURtRuntime *string CPUs *string CPUsetCPUs *string CPUsetMems *string CapAdd []string CapDrop []string CgroupParent *string DNS []string DNSOption []string DNSSearch []string Detach *string DetachKeys *string Device []string DeviceCgroupRule []string DeviceReadBPS []string DeviceReadIOPS []string DeviceWriteBPS []string DeviceWriteIOPS []string DisableContentTrust *string Domainname *string Entrypoint *string Env map[string]string EnvFile []string Expose []string GroupAdd []string HealthCmd *string HealthInterval *string HealthRetries *string HealthStartPeriod *string HealthTimeout *string Hostname *string IP *string IP6 *string IPC *string Init *string Interactive *string Isolation *string KernelMemory *string Label map[string]string LabelFile []string Link []string LinkLocalIP []string LogDriver *string LogOpt map[string]string MacAddress *string Memory *string MemoryReservation *string MemorySwap *string MemorySwappiness *string Mount map[string]string Name *string Network *string NetworkAlias []string NoHealthcheck *string OOMKillDisable *string OOMScoreAdj *string PID *string PidsLimit *string Platform *string Privileged *string Publish []string PublishAll *string ReadOnly *string Restart *string Rm *string Runtime *string SecurityOpt map[string]string ShmSize *string SigProxy *string StopSignal *string StopTimeout *string StorageOpt map[string]string Sysctl map[string]string TTY *string Tmpfs []string UTS *string Ulimit map[string]string User *string Userns *string Volume []string VolumeDriver *string VolumesFrom []string Workdir *string }
RunOption is an option for executing docker run.
type ServerVersion ¶
type ServerVersion struct { Version string APIVersion string GOVersion string GitCommit string Build string OS string Arch string }
ServerVersion is client info.
Server: Docker Engine - Community
Engine: Version: 18.09.1 API version: 1.39 (minimum version 1.12) Go version: go1.10.6 Git commit: 4c52b90 Built: Wed Jan 9 19:41:49 2019 OS/Arch: linux/amd64 Experimental: true
type VersionOption ¶
VersionOption is an option for executing docker version.
Click to show internal directories.
Click to hide internal directories.