Documentation ¶
Overview ¶
Package api Provides a container compatible interface.
This documentation describes the Podman v2.0 RESTful API. It replaces the Podman v1.0 API and was initially delivered along with Podman v2.0. It consists of a Docker-compatible API and a Libpod API providing support for Podman’s unique features such as pods.
To start the service and keep it running for 5,000 seconds (-t 0 runs forever):
podman system service -t 5000 &
You can then use cURL on the socket using requests documented below.
NOTE: if you install the package podman-docker, it will create a symbolic link for /var/run/docker.sock to /run/podman/podman.sock
See podman-service(1) for more information.
Quick Examples: 'podman info' curl --unix-socket /run/podman/podman.sock http://d/v1.0.0/libpod/info 'podman pull quay.io/containers/podman' curl -XPOST --unix-socket /run/podman/podman.sock -v 'http://d/v1.0.0/images/create?fromImage=quay.io%2Fcontainers%2Fpodman' 'podman list images' curl --unix-socket /run/podman/podman.sock -v 'http://d/v1.0.0/libpod/images/json' | jq
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 ¶
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 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 // contains filtered or unexported fields }
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) APIHandler ¶
func (s *APIServer) APIHandler(h http.HandlerFunc) http.HandlerFunc
APIHandler is a wrapper to enhance HandlerFunc's and remove redundant code
func (*APIServer) RegisterSwaggerHandlers ¶
RegisterSwaggerHandlers maps the swagger endpoint for the server
Source Files ¶
- docs.go
- handler_api.go
- listener_api.go
- register_archive.go
- register_auth.go
- register_containers.go
- register_distribution.go
- register_events.go
- register_exec.go
- register_generate.go
- register_healthcheck.go
- register_images.go
- register_info.go
- register_manifest.go
- register_monitor.go
- register_networks.go
- register_ping.go
- register_play.go
- register_plugins.go
- register_pods.go
- register_swagger.go
- register_swarm.go
- register_system.go
- register_version.go
- register_volumes.go
- server.go
- swagger.go