Documentation
¶
Index ¶
- Constants
- func Lock(dataRoot string, address string) error
- func ServiceHash(o types.ServiceConfig) (string, error)
- func Unlock() error
- type BuildOptions
- type Composer
- func (c *Composer) Build(ctx context.Context, bo BuildOptions, services []string) error
- func (c *Composer) Config(ctx context.Context, w io.Writer, co ConfigOptions) error
- func (c *Composer) Containers(ctx context.Context, services ...string) ([]containerd.Container, error)
- func (c *Composer) Copy(ctx context.Context, co CopyOptions) error
- func (c *Composer) Create(ctx context.Context, opt CreateOptions, services []string) error
- func (c *Composer) Down(ctx context.Context, downOptions DownOptions) error
- func (c *Composer) Exec(ctx context.Context, eo ExecOptions) error
- func (c *Composer) Kill(ctx context.Context, opts KillOptions, services []string) error
- func (c *Composer) Logs(ctx context.Context, lo LogsOptions, services []string) error
- func (c *Composer) Pause(ctx context.Context, services []string, writer io.Writer) error
- func (c *Composer) Port(ctx context.Context, writer io.Writer, po PortOptions) error
- func (c *Composer) Pull(ctx context.Context, po PullOptions, services []string) error
- func (c *Composer) Push(ctx context.Context, po PushOptions, services []string) error
- func (c *Composer) Remove(ctx context.Context, opt RemoveOptions, services []string) error
- func (c *Composer) Restart(ctx context.Context, opt RestartOptions, services []string) error
- func (c *Composer) Run(ctx context.Context, ro RunOptions) error
- func (c *Composer) ServiceNames(svcs ...string) ([]string, error)
- func (c *Composer) Services(ctx context.Context, svcs ...string) ([]*serviceparser.Service, error)
- func (c *Composer) Stop(ctx context.Context, opt StopOptions, services []string) error
- func (c *Composer) Unpause(ctx context.Context, services []string, writer io.Writer) error
- func (c *Composer) Up(ctx context.Context, uo UpOptions, services []string) error
- type ConfigOptions
- type CopyOptions
- type CreateOptions
- type DownOptions
- type ExecOptions
- type KillOptions
- type LogsOptions
- type Options
- type PortOptions
- type PullOptions
- type PushOptions
- type RemoveOptions
- type RestartOptions
- type RunOptions
- type StopOptions
- type UpOptions
Constants ¶
const ( // RecreateNever specifies never recreating existing service containers RecreateNever = "never" // RecreateForce specifies always force-recreating service containers RecreateForce = "force" // RecreateDiverged specifies only recreating service containers which diverges from compose model. // (Unimplemented, currently equal to `RecreateNever`) In docker-compose, // service config is hashed and stored in a label. // FYI: https://github.com/docker/compose/blob/v2.14.1/pkg/compose/convergence.go#L244 RecreateDiverged = "diverged" )
FYI: https://github.com/docker/compose/blob/v2.14.1/pkg/api/api.go#L423
Variables ¶
This section is empty.
Functions ¶
func ServiceHash ¶
func ServiceHash(o types.ServiceConfig) (string, error)
ServiceHash is from https://github.com/docker/compose/blob/v2.2.2/pkg/compose/hash.go#L28-L38
Types ¶
type BuildOptions ¶
type Composer ¶
type Composer struct {
Options
// contains filtered or unexported fields
}
func (*Composer) Containers ¶
func (*Composer) Exec ¶
func (c *Composer) Exec(ctx context.Context, eo ExecOptions) error
Exec executes a given command on a running container specified by `ServiceName` (and `Index` if it has multiple instances).
func (*Composer) Port ¶
Port gets the corresponding public port of a given private port/protocol on a service container.
func (*Composer) Restart ¶
Restart restarts running/stopped containers in `services`. It calls `nerdctl restart CONTAINER_ID` to do the actual job.
func (*Composer) ServiceNames ¶
ServiceNames returns service names in dependency order.
func (*Composer) Stop ¶
Stop stops containers in `services` without removing them. It calls `nerdctl stop CONTAINER_ID` to do the actual job.
type ConfigOptions ¶
type CopyOptions ¶
type CreateOptions ¶
type CreateOptions struct {
Build bool
NoBuild bool
ForceRecreate bool
NoRecreate bool
Pull *string
}
CreateOptions stores all option input from `nerdctl compose create`
type DownOptions ¶
type ExecOptions ¶
type ExecOptions struct {
ServiceName string
Index int
// params to be passed to `nerdctl exec`
Detach bool
Interactive bool
Tty bool
Privileged bool
User string
WorkDir string
Env []string
Args []string
}
ExecOptions stores options passed from users as flags and args.
type KillOptions ¶
type KillOptions struct {
Signal string
}
type LogsOptions ¶
type Options ¶
type Options struct {
Project string // empty for default
ProjectDirectory string
ConfigPaths []string
Profiles []string
Services []string
EnvFile string
NerdctlCmd string
NerdctlArgs []string
NetworkInUse func(ctx context.Context, netName string) (bool, error)
NetworkExists func(string) (bool, error)
VolumeExists func(string) (bool, error)
ImageExists func(ctx context.Context, imageName string) (bool, error)
EnsureImage func(ctx context.Context, imageName, pullMode, platform string, ps *serviceparser.Service, quiet bool) error
DebugPrintFull bool // full debug print, may leak secret env var to logs
Experimental bool // enable experimental features
IPFSAddress string
}
Options groups the command line options recommended for a Compose implementation (ProjectOptions) and extra options for nerdctl
type PortOptions ¶
type PortOptions struct {
ServiceName string
Index int
Port int
Protocol string
DataStore string
Namespace string
}
PortOptions has args for getting the public port of a given private port/protocol in a service container.
type PullOptions ¶
type PullOptions struct {
Quiet bool
}
type PushOptions ¶
type PushOptions struct {
}
type RemoveOptions ¶
RemoveOptions stores all options when removing compose containers: Stop: if true, remove using `rm -f`; if false, check and skip running containers. Volumes: if remove anonymous volumes associated with the container.
type RestartOptions ¶
type RestartOptions struct {
Timeout *uint
}
RestartOptions stores all option input from `nerdctl compose restart`
type RunOptions ¶
type RunOptions struct {
ServiceName string
Args []string
NoBuild bool
NoColor bool
NoLogPrefix bool
ForceBuild bool
QuietPull bool
RemoveOrphans bool
Name string
Detach bool
NoDeps bool
Tty bool
SigProxy bool
Interactive bool
Rm bool
User string
Volume []string
Entrypoint []string
Env []string
Label []string
WorkDir string
ServicePorts bool
Publish []string
}
type StopOptions ¶
type StopOptions struct {
Timeout *uint
}
StopOptions stores all option input from `nerdctl compose stop`