12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- package libcontainer
- import (
- "github.com/opencontainers/runc/libcontainer/configs"
- )
- type Factory interface {
- // Creates a new container with the given id and starts the initial process inside it.
- // id must be a string containing only letters, digits and underscores and must contain
- // between 1 and 1024 characters, inclusive.
- //
- // The id must not already be in use by an existing container. Containers created using
- // a factory with the same path (and file system) must have distinct ids.
- //
- // Returns the new container with a running process.
- //
- // errors:
- // IdInUse - id is already in use by a container
- // InvalidIdFormat - id has incorrect format
- // ConfigInvalid - config is invalid
- // Systemerror - System error
- //
- // On error, any partially created container parts are cleaned up (the operation is atomic).
- Create(id string, config *configs.Config) (Container, error)
- // Load takes an ID for an existing container and returns the container information
- // from the state. This presents a read only view of the container.
- //
- // errors:
- // Path does not exist
- // Container is stopped
- // System error
- Load(id string) (Container, error)
- // StartInitialization is an internal API to libcontainer used during the reexec of the
- // container.
- //
- // Errors:
- // Pipe connection error
- // System error
- StartInitialization() error
- // Type returns info string about factory type (e.g. lxc, libcontainer...)
- Type() string
- }
|