mirror of
https://github.com/containers/podman.git
synced 2025-05-23 10:07:33 +08:00
new "image" mount type
Add a new "image" mount type to `--mount`. The source of the mount is the name or ID of an image. The destination is the path inside the container. Image mounts further support an optional `rw,readwrite` parameter which if set to "true" will yield the mount writable inside the container. Note that no changes are propagated to the image mount on the host (which in any case is read only). Mounts are overlay mounts. To support read-only overlay mounts, vendor a non-release version of Buildah. Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
This commit is contained in:
56
vendor/github.com/fsouza/go-dockerclient/container_start.go
generated
vendored
Normal file
56
vendor/github.com/fsouza/go-dockerclient/container_start.go
generated
vendored
Normal file
@ -0,0 +1,56 @@
|
||||
package docker
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
// StartContainer starts a container, returning an error in case of failure.
|
||||
//
|
||||
// Passing the HostConfig to this method has been deprecated in Docker API 1.22
|
||||
// (Docker Engine 1.10.x) and totally removed in Docker API 1.24 (Docker Engine
|
||||
// 1.12.x). The client will ignore the parameter when communicating with Docker
|
||||
// API 1.24 or greater.
|
||||
//
|
||||
// See https://goo.gl/fbOSZy for more details.
|
||||
func (c *Client) StartContainer(id string, hostConfig *HostConfig) error {
|
||||
return c.startContainer(id, hostConfig, doOptions{})
|
||||
}
|
||||
|
||||
// StartContainerWithContext starts a container, returning an error in case of
|
||||
// failure. The context can be used to cancel the outstanding start container
|
||||
// request.
|
||||
//
|
||||
// Passing the HostConfig to this method has been deprecated in Docker API 1.22
|
||||
// (Docker Engine 1.10.x) and totally removed in Docker API 1.24 (Docker Engine
|
||||
// 1.12.x). The client will ignore the parameter when communicating with Docker
|
||||
// API 1.24 or greater.
|
||||
//
|
||||
// See https://goo.gl/fbOSZy for more details.
|
||||
//nolint:golint
|
||||
func (c *Client) StartContainerWithContext(id string, hostConfig *HostConfig, ctx context.Context) error {
|
||||
return c.startContainer(id, hostConfig, doOptions{context: ctx})
|
||||
}
|
||||
|
||||
func (c *Client) startContainer(id string, hostConfig *HostConfig, opts doOptions) error {
|
||||
path := "/containers/" + id + "/start"
|
||||
if c.serverAPIVersion == nil {
|
||||
c.checkAPIVersion()
|
||||
}
|
||||
if c.serverAPIVersion != nil && c.serverAPIVersion.LessThan(apiVersion124) {
|
||||
opts.data = hostConfig
|
||||
opts.forceJSON = true
|
||||
}
|
||||
resp, err := c.do(http.MethodPost, path, opts)
|
||||
if err != nil {
|
||||
if e, ok := err.(*Error); ok && e.Status == http.StatusNotFound {
|
||||
return &NoSuchContainer{ID: id, Err: err}
|
||||
}
|
||||
return err
|
||||
}
|
||||
defer resp.Body.Close()
|
||||
if resp.StatusCode == http.StatusNotModified {
|
||||
return &ContainerAlreadyRunning{ID: id}
|
||||
}
|
||||
return nil
|
||||
}
|
Reference in New Issue
Block a user