Documentation ¶
Overview ¶
Package api Provides a container compatible interface. (Experimental)
This documentation describes the HTTP Libpod interface. It is to be considered only as experimental as this point. The endpoints, parameters, inputs, and return values can all change.
Terms Of Service:
Schemes: http, https Host: podman.io BasePath: / Version: 0.0.1 License: Apache-2.0 https://opensource.org/licenses/Apache-2.0 Contact: Podman <podman@lists.podman.io> https://podman.io/community/ InfoExtensions: x-logo: - url: https://raw.githubusercontent.com/containers/libpod/master/logo/podman-logo.png - altText: "Podman logo" Produces: - application/json - text/plain - text/html Consumes: - application/json - application/x-tar
swagger:meta
Index ¶
- Constants
- func APIHandler(ctx context.Context, h http.HandlerFunc) http.HandlerFunc
- func ListenUnix(network string, path string) (net.Listener, error)
- func VersionedPath(p string) string
- type APIServer
- func (s *APIServer) Close() error
- func (s *APIServer) RegisterAuthHandlers(r *mux.Router) error
- func (s *APIServer) RegisterContainersHandlers(r *mux.Router) error
- func (s *APIServer) RegisterDistributionHandlers(r *mux.Router) error
- func (s *APIServer) RegisterEventsHandlers(r *mux.Router) error
- func (s *APIServer) RegisterMonitorHandlers(r *mux.Router) error
- func (s *APIServer) RegisterPluginsHandlers(r *mux.Router) error
- func (s *APIServer) RegisterSwarmHandlers(r *mux.Router) error
- func (s *APIServer) Serve() error
- func (s *APIServer) Shutdown() error
Constants ¶
const ( DefaultServiceDuration = 300 * time.Second UnlimitedServiceDuration = 0 * time.Second )
Number of seconds to wait for next request, if exceeded shutdown server
Variables ¶
This section is empty.
Functions ¶
func APIHandler ¶
func APIHandler(ctx context.Context, h http.HandlerFunc) http.HandlerFunc
APIHandler is a wrapper to enhance HandlerFunc's and remove redundant code
func ListenUnix ¶
ListenUnix follows stdlib net.Listen() API, providing a unix listener for given path
ListenUnix will delete and create files/directories as needed
func VersionedPath ¶
VersionedPath prepends the version parsing code any handler may override this default when registering URL(s)
Types ¶
type APIServer ¶
type APIServer struct { http.Server // The HTTP work happens here *schema.Decoder // Decoder for Query parameters to structs context.Context // Context to carry objects to handlers *libpod.Runtime // Where the real work happens net.Listener // mux for routing HTTP API calls to libpod routines context.CancelFunc // Stop APIServer *time.Timer // Hold timer for sliding window time.Duration // Duration of client access sliding window }
func NewServerWithSettings ¶
func NewServerWithSettings(runtime *libpod.Runtime, duration time.Duration, listener *net.Listener) (*APIServer, error)
NewServerWithSettings will create and configure a new API server using provided settings
func (*APIServer) RegisterAuthHandlers ¶
func (*APIServer) RegisterContainersHandlers ¶
func (*APIServer) RegisterDistributionHandlers ¶
func (*APIServer) RegisterEventsHandlers ¶
func (*APIServer) RegisterMonitorHandlers ¶
func (*APIServer) RegisterPluginsHandlers ¶
func (*APIServer) RegisterSwarmHandlers ¶
Source Files ¶
- docs.go
- handler_api.go
- listener_api.go
- register_auth.go
- register_containers.go
- register_distribution.go
- register_events.go
- register_exec.go
- register_healthcheck.go
- register_images.go
- register_info.go
- register_monitor.go
- register_ping.go
- register_plugins.go
- register_pods.go
- register_swarm.go
- register_system.go
- register_version.go
- register_volumes.go
- server.go
- swagger.go