swagger: '2.0' info: contact: email: podman@lists.podman.io name: Podman url: https://podman.io/community/ description: 'This documentation describes the Podman v2.x+ RESTful API. 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 /run/docker.sock to /run/podman/podman.sock NOTE: Some fields in the API response JSON are encoded as omitempty, which means that if said field has a zero value, they will not be encoded in the API response. This is a feature to help reduce the size of the JSON responses returned via the API. NOTE: Due to the limitations of [go-swagger](https://github.com/go-swagger/go-swagger), some field values that have a complex type show up as null in the docs as well as in the API responses. This is because the zero value for the field type is null. The field description in the docs will state what type the field is expected to be for such cases. See podman-system-service(1) for more information. Quick Examples: ''podman info'' curl --unix-socket /run/podman/podman.sock http://d/v6.0.0/libpod/info ''podman pull quay.io/containers/podman'' curl -XPOST --unix-socket /run/podman/podman.sock -v ''http://d/v6.0.0/images/create?fromImage=quay.io%2Fcontainers%2Fpodman'' ''podman list images'' curl --unix-socket /run/podman/podman.sock -v ''http://d/v6.0.0/libpod/images/json'' | jq' license: name: Apache-2.0 url: https://opensource.org/licenses/Apache-2.0 termsOfService: https://github.com/containers/podman/blob/913caaa9b1de2b63692c9bae15120208194c9eb3/LICENSE title: supports a RESTful API for the Libpod library artifacts pods API version: 5.0.0 x-logo: - url: https://raw.githubusercontent.com/containers/libpod/main/logo/podman-logo.png - altText: Podman logo host: podman.io basePath: / schemes: - http - https consumes: - application/json - application/x-tar produces: - application/json - application/octet-stream - text/plain tags: - description: Actions related to pods name: pods paths: /libpod/generate/{name}/systemd: get: description: Generate Systemd Units based on a pod or container. operationId: GenerateSystemdLibpod parameters: - description: Name or ID of the container or pod. in: path name: name required: true type: string - default: false description: Use container/pod names instead of IDs. in: query name: useName type: boolean - default: false description: Create a new container instead of starting an existing one. in: query name: new type: boolean - default: false description: Do not generate the header including the Podman version and the timestamp. in: query name: noHeader type: boolean - default: 0 description: Start timeout in seconds. in: query name: startTimeout type: integer - default: 10 description: Stop timeout in seconds. in: query name: stopTimeout type: integer - default: on-failure description: Systemd restart-policy. enum: - 'no' - on-success - on-failure - on-abnormal - on-watchdog - on-abort - always in: query name: restartPolicy type: string - default: container description: Systemd unit name prefix for containers. in: query name: containerPrefix type: string - default: pod description: Systemd unit name prefix for pods. in: query name: podPrefix type: string - default: '-' description: Systemd unit name separator between name/id and prefix. in: query name: separator type: string - default: 0 description: Configures the time to sleep before restarting a service. in: query name: restartSec type: integer - default: [] description: Systemd Wants list for the container or pods. in: query items: type: string name: wants type: array - default: [] description: Systemd After list for the container or pods. in: query items: type: string name: after type: array - default: [] description: Systemd Requires list for the container or pods. in: query items: type: string name: requires type: array - default: [] description: Set environment variables to the systemd unit files. in: query items: type: string name: additionalEnvVariables type: array - default: false description: Add template specifier for the systemd unit file names. in: query name: templateUnitFile type: boolean produces: - application/json responses: '200': description: no error schema: additionalProperties: type: string type: object '500': $ref: '#/responses/internalError' summary: Generate Systemd Units tags: - pods /libpod/generate/kube: get: description: Generate Kubernetes YAML based on a pod or container. operationId: GenerateKubeLibpod parameters: - description: Name or ID of the container or pod. in: query items: type: string name: names required: true type: array - default: false description: Generate YAML for a Kubernetes service object. in: query name: service type: boolean - default: pod description: Generate YAML for the given Kubernetes kind. in: query name: type type: string - default: 0 description: Set the replica number for Deployment kind. format: int32 in: query name: replicas type: integer - default: false description: don't truncate annotations to the Kubernetes maximum length of 63 characters in: query name: noTrunc type: boolean - default: false description: add podman-only reserved annotations in generated YAML file (cannot be used by Kubernetes) in: query name: podmanOnly type: boolean produces: - text/vnd.yaml - application/json responses: '200': description: Kubernetes YAML file describing pod schema: format: binary type: string '500': $ref: '#/responses/internalError' summary: Generate a Kubernetes YAML file. tags: - pods /libpod/kube/apply: post: description: Deploy a podman container, pod, volume, or Kubernetes yaml to a Kubernetes cluster. operationId: KubeApplyLibpod parameters: - description: Path to the CA cert file for the Kubernetes cluster. in: query name: caCertFile type: string - description: Path to the kubeconfig file for the Kubernetes cluster. in: query name: kubeConfig type: string - description: The namespace to deploy the workload to on the Kubernetes cluster. in: query name: namespace type: string - description: Create a service object for the container being deployed. in: query name: service type: boolean - description: Path to the Kubernetes yaml file to deploy. in: query name: file type: string - description: Kubernetes YAML file. in: body name: request schema: type: string produces: - application/json responses: '200': description: Kubernetes YAML file successfully deployed to cluster schema: format: binary type: string '500': $ref: '#/responses/internalError' summary: Apply a podman workload or Kubernetes YAML file. tags: - pods /libpod/play/kube: delete: description: Tears down pods, secrets, and volumes defined in a YAML file operationId: PlayKubeDownLibpod parameters: - default: false description: Remove volumes. in: query name: force type: boolean produces: - application/json responses: '200': $ref: '#/responses/playKubeResponseLibpod' '500': $ref: '#/responses/internalError' summary: Remove resources created from kube play tags: - pods post: description: "Create and run pods based on a Kubernetes YAML file.\n\n### Content-Type\n\nThen endpoint support two Content-Type\n - `plain/text` for yaml format\n - `application/x-tar` for sending context(s) required for building images\n\n#### Tar format\n\nThe tar format must contain a `play.yaml` file at the root that will be used.\nIf the file format requires context to build an image, it uses the image name and\ncheck for corresponding folder.\n\nFor example, the client sends a tar file with the following structure:\n\n```\n└── content.tar\n ├── play.yaml\n └── foobar/\n └── Containerfile\n```\n\nThe `play.yaml` is the following, the `foobar` image means we are looking for a context with this name.\n```\napiVersion: v1\nkind: Pod\nmetadata:\nname: demo-build-remote\nspec:\ncontainers:\n - name: container\n image: foobar\n```\n" operationId: PlayKubeLibpod parameters: - default: plain/text enum: - plain/text - application/x-tar in: header name: Content-Type type: string - description: JSON encoded value of annotations (a map[string]string). in: query name: annotations type: string - description: Logging driver for the containers in the pod. in: query name: logDriver type: string - description: logging driver options in: query items: type: string name: logOptions type: array - description: USe the network mode or specify an array of networks. in: query items: type: string name: network type: array - default: false description: do not setup /etc/hosts file in container in: query name: noHosts type: boolean - default: false description: use annotations that are not truncated to the Kubernetes maximum length of 63 characters in: query name: noTrunc type: boolean - description: publish a container's port, or a range of ports, to the host in: query items: type: string name: publishPorts type: array - description: Whether to publish all ports defined in the K8S YAML file (containerPort, hostPort), if false only hostPort will be published in: query name: publishAllPorts type: boolean - default: false description: replace existing pods and containers in: query name: replace type: boolean - default: false description: Starts a service container before all pods. in: query name: serviceContainer type: boolean - default: true description: Start the pod after creating it. in: query name: start type: boolean - description: Static IPs used for the pods. in: query items: type: string name: staticIPs type: array - description: Static MACs used for the pods. in: query items: type: string name: staticMACs type: array - default: true description: Require HTTPS and verify signatures when contacting registries. in: query name: tlsVerify type: boolean - description: Set the user namespace mode for the pods. in: query name: userns type: string - default: false description: Clean up all objects created when a SIGTERM is received or pods exit. in: query name: wait type: boolean - description: Build the images with corresponding context. in: query name: build type: boolean - description: Kubernetes YAML file. in: body name: request schema: type: string produces: - application/json responses: '200': $ref: '#/responses/playKubeResponseLibpod' '500': $ref: '#/responses/internalError' summary: Play a Kubernetes YAML file. tags: - pods /libpod/pods/{name}: delete: operationId: PodDeleteLibpod parameters: - description: the name or ID of the pod in: path name: name required: true type: string - description: force removal of a running pod by first stopping all containers, then removing all containers in the pod in: query name: force type: boolean - description: number of seconds to wait before killing containers in pod in: query name: timeout type: integer produces: - application/json responses: '200': $ref: '#/responses/podRmResponse' '400': $ref: '#/responses/badParamError' '404': $ref: '#/responses/podNotFound' '500': $ref: '#/responses/internalError' summary: Remove pod tags: - pods /libpod/pods/{name}/exists: get: description: Check if a pod exists by name or ID operationId: PodExistsLibpod parameters: - description: the name or ID of the pod in: path name: name required: true type: string produces: - application/json responses: '204': description: pod exists '404': $ref: '#/responses/podNotFound' '500': $ref: '#/responses/internalError' summary: Pod exists tags: - pods /libpod/pods/{name}/json: get: operationId: PodInspectLibpod parameters: - description: the name or ID of the pod in: path name: name required: true type: string produces: - application/json responses: '200': $ref: '#/responses/podInspectResponse' '404': $ref: '#/responses/podNotFound' '500': $ref: '#/responses/internalError' summary: Inspect pod tags: - pods /libpod/pods/{name}/kill: post: operationId: PodKillLibpod parameters: - description: the name or ID of the pod in: path name: name required: true type: string - default: SIGKILL description: signal to be sent to pod in: query name: signal type: string produces: - application/json responses: '200': $ref: '#/responses/podKillResponse' '400': $ref: '#/responses/badParamError' '404': $ref: '#/responses/podNotFound' '409': $ref: '#/responses/podKillResponse' '500': $ref: '#/responses/internalError' summary: Kill a pod tags: - pods /libpod/pods/{name}/pause: post: description: Pause a pod operationId: PodPauseLibpod parameters: - description: the name or ID of the pod in: path name: name required: true type: string produces: - application/json responses: '200': $ref: '#/responses/podPauseResponse' '404': $ref: '#/responses/podNotFound' '409': $ref: '#/responses/podPauseResponse' '500': $ref: '#/responses/internalError' summary: Pause a pod tags: - pods /libpod/pods/{name}/restart: post: operationId: PodRestartLibpod parameters: - description: the name or ID of the pod in: path name: name required: true type: string produces: - application/json responses: '200': $ref: '#/responses/podRestartResponse' '404': $ref: '#/responses/podNotFound' '409': $ref: '#/responses/podRestartResponse' '500': $ref: '#/responses/internalError' summary: Restart a pod tags: - pods /libpod/pods/{name}/start: post: operationId: PodStartLibpod parameters: - description: the name or ID of the pod in: path name: name required: true type: string produces: - application/json responses: '200': $ref: '#/responses/podStartResponse' '304': $ref: '#/responses/podAlreadyStartedError' '404': $ref: '#/responses/podNotFound' '409': $ref: '#/responses/podStartResponse' '500': $ref: '#/responses/internalError' summary: Start a pod tags: - pods /libpod/pods/{name}/stop: post: operationId: PodStopLibpod parameters: - description: the name or ID of the pod in: path name: name required: true type: string - description: timeout in: query name: t type: integer produces: - application/json responses: '200': $ref: '#/responses/podStopResponse' '304': $ref: '#/responses/podAlreadyStoppedError' '400': $ref: '#/responses/badParamError' '404': $ref: '#/responses/podNotFound' '409': $ref: '#/responses/podStopResponse' '500': $ref: '#/responses/internalError' summary: Stop a pod tags: - pods /libpod/pods/{name}/top: get: description: List processes running inside a pod operationId: PodTopLibpod parameters: - description: Name of pod to query for processes in: path name: name required: true type: string - description: when true, repeatedly stream the latest output (As of version 4.0) in: query name: stream type: boolean - default: 5 description: if streaming, delay in seconds between updates. Must be >1. (As of version 4.0) in: query name: delay type: integer - description: 'arguments to pass to ps such as aux. ' in: query name: ps_args type: string produces: - application/json responses: '200': $ref: '#/responses/podTopResponse' '404': $ref: '#/responses/podNotFound' '500': $ref: '#/responses/internalError' summary: List processes tags: - pods /libpod/pods/{name}/unpause: post: operationId: PodUnpauseLibpod parameters: - description: the name or ID of the pod in: path name: name required: true type: string produces: - application/json responses: '200': $ref: '#/responses/podUnpauseResponse' '404': $ref: '#/responses/podNotFound' '409': $ref: '#/responses/podUnpauseResponse' '500': $ref: '#/responses/internalError' summary: Unpause a pod tags: - pods /libpod/pods/create: post: operationId: PodCreateLibpod parameters: - description: attributes for creating a pod in: body name: create schema: $ref: '#/definitions/PodSpecGenerator' produces: - application/json responses: '201': description: '' schema: $ref: '#/definitions/IDResponse' '400': $ref: '#/responses/badParamError' '409': description: status conflict schema: description: message describing error type: string '500': $ref: '#/responses/internalError' summary: Create a pod tags: - pods /libpod/pods/json: get: operationId: PodListLibpod parameters: - description: "JSON encoded value of the filters (a map[string][]string) to process on the pods list. Available filters:\n - `id=` Matches all of pod id.\n - `label=` or `label=:` Matches pods based on the presence of a label alone or a label and a value.\n - `name=` Matches all of pod name.\n - `until=` List pods created before this timestamp. The `` can be Unix timestamps, date formatted timestamps, or Go duration strings (e.g. `10m`, `1h30m`) computed relative to the daemon machine’s time.\n - `status=` Pod's status: `stopped`, `running`, `paused`, `exited`, `dead`, `created`, `degraded`.\n - `network=` Name or full ID of network.\n - `ctr-names=` Container name within the pod.\n - `ctr-ids=` Container ID within the pod.\n - `ctr-status=` Container status within the pod.\n - `ctr-number=` Number of containers in the pod.\n" in: query name: filters type: string produces: - application/json responses: '200': $ref: '#/responses/podsListResponse' '400': $ref: '#/responses/badParamError' '500': $ref: '#/responses/internalError' summary: List pods tags: - pods /libpod/pods/prune: post: operationId: PodPruneLibpod produces: - application/json responses: '200': $ref: '#/responses/podPruneResponse' '400': $ref: '#/responses/badParamError' '409': description: pod already exists '500': $ref: '#/responses/internalError' summary: Prune unused pods tags: - pods /libpod/pods/stats: get: description: Display a live stream of resource usage statistics for the containers in one or more pods operationId: PodStatsAllLibpod parameters: - description: Provide statistics for all running pods. in: query name: all type: boolean - description: Names or IDs of pods. in: query items: type: string name: namesOrIDs type: array - default: false description: Stream the output in: query name: stream type: boolean - default: 5 description: Time in seconds between stats reports in: query name: delay type: integer produces: - application/json responses: '200': $ref: '#/responses/podStatsResponse' '404': $ref: '#/responses/podNotFound' '500': $ref: '#/responses/internalError' summary: Statistics for one or more pods tags: - pods definitions: InspectPodData: description: 'InspectPodData contains detailed information on a pod''s configuration and state. It is used as the output of Inspect on pods.' properties: CgroupParent: description: CgroupParent is the parent of the pod's Cgroup. type: string CgroupPath: description: CgroupPath is the path to the pod's Cgroup. type: string Containers: description: 'Containers gives a brief summary of all containers in the pod and their current status.' items: $ref: '#/definitions/InspectPodContainerInfo' type: array CreateCgroup: description: 'CreateCgroup is whether this pod will create its own Cgroup to group containers under.' type: boolean CreateCommand: description: 'CreateCommand is the full command plus arguments of the process the container has been created with.' items: type: string type: array CreateInfra: description: 'CreateInfra is whether this pod will create an infra container to share namespaces.' type: boolean Created: description: Created is the time when the pod was created. format: date-time type: string ExitPolicy: description: ExitPolicy of the pod. type: string Hostname: description: Hostname is the hostname that the pod will set. type: string Id: description: ID is the ID of the pod. type: string x-go-name: ID InfraConfig: $ref: '#/definitions/InspectPodInfraConfig' InfraContainerID: description: 'InfraContainerID is the ID of the pod''s infra container, if one is present.' type: string Labels: additionalProperties: type: string description: 'Labels is a set of key-value labels that have been applied to the pod.' type: object LockNumber: description: Number of the pod's Libpod lock. format: uint32 type: integer Name: description: Name is the name of the pod. type: string Namespace: description: Namespace is the Libpod namespace the pod is placed in. type: string NumContainers: description: 'NumContainers is the number of containers in the pod, including the infra container.' format: uint64 type: integer RestartPolicy: description: RestartPolicy of the pod. type: string SharedNamespaces: description: 'SharedNamespaces contains a list of namespaces that will be shared by containers within the pod. Can only be set if CreateInfra is true.' items: type: string type: array State: description: State represents the current state of the pod. type: string blkio_weight: description: BlkioWeight contains the blkio weight limit for the pod format: uint64 type: integer x-go-name: BlkioWeight blkio_weight_device: description: BlkioWeightDevice contains the blkio weight device limits for the pod items: $ref: '#/definitions/InspectBlkioWeightDevice' type: array x-go-name: BlkioWeightDevice cpu_period: description: CPUPeriod contains the CPU period of the pod format: uint64 type: integer x-go-name: CPUPeriod cpu_quota: description: CPUQuota contains the CPU quota of the pod format: int64 type: integer x-go-name: CPUQuota cpu_shares: description: CPUShares contains the cpu shares for the pod format: uint64 type: integer x-go-name: CPUShares cpuset_cpus: description: CPUSetCPUs contains linux specific CPU data for the pod type: string x-go-name: CPUSetCPUs cpuset_mems: description: CPUSetMems contains linux specific CPU data for the pod type: string x-go-name: CPUSetMems device_read_bps: description: BlkioDeviceReadBps contains the Read/Access limit for the pod's devices items: $ref: '#/definitions/InspectBlkioThrottleDevice' type: array x-go-name: BlkioDeviceReadBps device_write_bps: description: BlkioDeviceReadBps contains the Read/Access limit for the pod's devices items: $ref: '#/definitions/InspectBlkioThrottleDevice' type: array x-go-name: BlkioDeviceWriteBps devices: description: Devices contains the specified host devices items: $ref: '#/definitions/InspectDevice' type: array x-go-name: Devices memory_limit: description: MemoryLimit contains the specified cgroup memory limit for the pod format: uint64 type: integer x-go-name: MemoryLimit memory_swap: description: MemorySwap contains the specified memory swap limit for the pod format: uint64 type: integer x-go-name: MemorySwap mounts: description: Mounts contains volume related information for the pod items: $ref: '#/definitions/InspectMount' type: array x-go-name: Mounts security_opt: description: SecurityOpt contains the specified security labels and related SELinux information items: type: string type: array x-go-name: SecurityOpts volumes_from: description: VolumesFrom contains the containers that the pod inherits mounts from items: type: string type: array x-go-name: VolumesFrom type: object x-go-package: go.podman.io/podman/v6/libpod/define TmpfsOptions: properties: Mode: $ref: '#/definitions/FileMode' Options: description: 'Options to be passed to the tmpfs mount. An array of arrays. Flag options should be provided as 1-length arrays. Other types should be provided as 2-length arrays, where the first item is the key and the second the value.' items: items: type: string type: array type: array SizeBytes: description: 'Size sets the size of the tmpfs, in bytes. This will be converted to an operating system specific value depending on the host. For example, on linux, it will be converted to use a ''k'', ''m'' or ''g'' syntax. BSD, though not widely supported with docker, uses a straight byte value. Percentages are not supported.' format: int64 type: integer title: TmpfsOptions defines options specific to mounts of type "tmpfs". type: object x-go-package: github.com/moby/moby/api/types/mount LinuxDeviceCgroup: description: 'LinuxDeviceCgroup represents a device rule for the devices specified to the device controller' properties: access: description: Cgroup access permissions format, rwm. type: string x-go-name: Access allow: description: Allow or deny type: boolean x-go-name: Allow major: description: Major is the device's major number. format: int64 type: integer x-go-name: Major minor: description: Minor is the device's minor number. format: int64 type: integer x-go-name: Minor type: description: Device type, block, char, etc. type: string x-go-name: Type type: object x-go-package: github.com/opencontainers/runtime-spec/specs-go ErrorModel: description: ErrorModel is used in remote connections with podman properties: cause: description: API root cause formatted for automated parsing example: API root cause type: string x-go-name: Because message: description: human error message, formatted for a human to read example: human error message type: string x-go-name: Message response: description: HTTP response code format: int64 minimum: 400 type: integer x-go-name: ResponseCode type: object x-go-package: go.podman.io/podman/v6/pkg/errorhandling ClusterOptions: title: ClusterOptions specifies options for a Cluster volume. type: object x-go-package: github.com/moby/moby/api/types/mount PortMapping: properties: container_port: description: 'ContainerPort is the port number that will be exposed from the container. Mandatory.' format: uint16 type: integer x-go-name: ContainerPort host_ip: description: 'HostIP is the IP that we will bind to on the host. If unset, assumed to be 0.0.0.0 (all interfaces).' type: string x-go-name: HostIP host_port: description: 'HostPort is the port number that will be forwarded from the host into the container. If omitted, a random port on the host (guaranteed to be over 1024) will be assigned.' format: uint16 type: integer x-go-name: HostPort protocol: description: 'Protocol is the protocol forward. Must be either "tcp", "udp", and "sctp", or some combination of these separated by commas. If unset, assumed to be TCP.' type: string x-go-name: Protocol range: description: 'Range is the number of ports that will be forwarded, starting at HostPort and ContainerPort and counting up. This is 1-indexed, so 1 is assumed to be a single port (only the Hostport:Containerport mapping will be added), 2 is two ports (both Hostport:Containerport and Hostport+1:Containerport+1), etc. If unset, assumed to be 1 (a single port). Both hostport + range and containerport + range must be less than 65536.' format: uint16 type: integer x-go-name: Range title: PortMapping is one or more ports that will be mapped into the container. type: object x-go-package: go.podman.io/common/libnetwork/types InspectBlkioWeightDevice: description: 'InspectBlkioWeightDevice holds information about the relative weight of an individual device node. Weights are used in the I/O scheduler to give relative priority to some accesses.' properties: Path: description: Path is the path to the device this applies to. type: string Weight: description: 'Weight is the relative weight the scheduler will use when scheduling I/O.' format: uint16 type: integer type: object x-go-package: go.podman.io/podman/v6/libpod/define InspectPodInfraConfig: description: 'InspectPodInfraConfig contains the configuration of the pod''s infra container.' properties: DNSOption: description: 'DNSOption is a set of DNS options that will be used by the infra container''s resolv.conf and shared with the remainder of the pod.' items: type: string type: array DNSSearch: description: 'DNSSearch is a set of DNS search domains that will be used by the infra container''s resolv.conf and shared with the remainder of the pod.' items: type: string type: array DNSServer: description: 'DNSServer is a set of DNS Servers that will be used by the infra container''s resolv.conf and shared with the remainder of the pod.' items: type: string type: array HostAdd: description: 'HostAdd adds a number of hosts to the infra container''s resolv.conf which will be shared with the rest of the pod.' items: type: string type: array HostNetwork: description: 'HostNetwork is whether the infra container (and thus the whole pod) will use the host''s network and not create a network namespace.' type: boolean HostsFile: description: 'HostsFile is the base file to create the `/etc/hosts` file inside the infra container which will be shared with the rest of the pod.' type: string NetworkOptions: additionalProperties: items: type: string type: array description: NetworkOptions are additional options for each network type: object Networks: description: Networks is a list of networks the pod will join. items: type: string type: array NoManageHostname: description: 'NoManageHostname indicates that the pod will not manage /etc/hostname and instead each container will handle their own.' type: boolean NoManageHosts: description: 'NoManageHosts indicates that the pod will not manage /etc/hosts and instead each container will handle their own.' type: boolean NoManageResolvConf: description: 'NoManageResolvConf indicates that the pod will not manage resolv.conf and instead each container will handle their own.' type: boolean PortBindings: additionalProperties: items: $ref: '#/definitions/InspectHostPort' type: array description: 'PortBindings are ports that will be forwarded to the infra container and then shared with the pod.' type: object StaticIP: description: 'StaticIP is a static IPv4 that will be assigned to the infra container and then used by the pod.' format: ipv4 type: string x-go-type: net.IP StaticMAC: description: 'StaticMAC is a static MAC address that will be assigned to the infra container and then used by the pod.' type: string cpu_period: description: CPUPeriod contains the CPU period of the pod format: uint64 type: integer x-go-name: CPUPeriod cpu_quota: description: CPUQuota contains the CPU quota of the pod format: int64 type: integer x-go-name: CPUQuota cpuset_cpus: description: CPUSetCPUs contains linux specific CPU data for the container type: string x-go-name: CPUSetCPUs pid_ns: description: Pid is the PID namespace mode of the pod's infra container type: string x-go-name: PidNS userns: description: UserNS is the usernamespace that all the containers in the pod will join. type: string x-go-name: UserNS uts_ns: description: UtsNS is the uts namespace that all containers in the pod will join type: string x-go-name: UtsNS type: object x-go-package: go.podman.io/podman/v6/libpod/define PodStopReport: type: object x-go-package: go.podman.io/podman/v6/pkg/domain/entities PodKillReport: type: object x-go-package: go.podman.io/podman/v6/pkg/domain/entities Consistency: title: Consistency represents the consistency requirements of a mount. type: string x-go-package: github.com/moby/moby/api/types/mount LinuxWeightDevice: description: LinuxWeightDevice struct holds a `major:minor weight` pair for weightDevice properties: leafWeight: description: LeafWeight is the bandwidth rate for the device while competing with the cgroup's child cgroups, CFQ scheduler only format: uint16 type: integer x-go-name: LeafWeight major: description: Major is the device's major number. format: int64 type: integer x-go-name: Major minor: description: Minor is the device's minor number. format: int64 type: integer x-go-name: Minor weight: description: Weight is the bandwidth rate for the device. format: uint16 type: integer x-go-name: Weight type: object x-go-package: github.com/opencontainers/runtime-spec/specs-go NamedVolume: description: 'NamedVolume holds information about a named volume that will be mounted into the container.' properties: Dest: description: 'Destination to mount the named volume within the container. Must be an absolute path. Path will be created if it does not exist.' type: string IsAnonymous: description: 'IsAnonymous sets the named volume as anonymous even if it has a name This is used for emptyDir volumes from a kube yaml' type: boolean Name: description: 'Name is the name of the named volume to be mounted. May be empty. If empty, a new named volume with a pseudorandomly generated name will be mounted at the given destination.' type: string Options: description: Options are options that the named volume will be mounted with. items: type: string type: array SubPath: description: SubPath stores the sub directory of the named volume to be mounted in the container type: string type: object x-go-package: go.podman.io/podman/v6/pkg/specgen InspectHostPort: description: 'InspectHostPort provides information on a port on the host that a container''s port is bound to.' properties: HostIp: description: 'IP on the host we are bound to. "" if not specified (binding to all IPs).' type: string x-go-name: HostIP HostPort: description: 'Port on the host we are bound to. No special formatting - just an integer stuffed into a string.' type: string type: object x-go-package: go.podman.io/podman/v6/libpod/define Type: title: Type represents the type of a mount. type: string x-go-package: github.com/moby/moby/api/types/mount InspectPodContainerInfo: properties: Id: description: ID is the ID of the container. type: string x-go-name: ID Name: description: Name is the name of the container. type: string State: description: State is the current status of the container. type: string title: InspectPodContainerInfo contains information on a container in a pod. type: object x-go-package: go.podman.io/podman/v6/libpod/define LinuxNetwork: description: LinuxNetwork identification and priority configuration properties: classID: description: Set class identifier for container's network packets format: uint32 type: integer x-go-name: ClassID priorities: description: Set priority of network traffic for container items: $ref: '#/definitions/LinuxInterfacePriority' type: array x-go-name: Priorities type: object x-go-package: github.com/opencontainers/runtime-spec/specs-go ListPodsReport: type: object x-go-package: go.podman.io/podman/v6/pkg/domain/entities InspectDevice: properties: CgroupPermissions: description: 'CgroupPermissions is the permissions of the mounted device. Presently not populated. TODO.' type: string PathInContainer: description: PathInContainer is the path of the device within the container. type: string PathOnHost: description: PathOnHost is the path of the device on the host. type: string title: InspectDevice is a single device that will be mounted into the container. type: object x-go-package: go.podman.io/podman/v6/libpod/define FileMode: description: 'The bits have the same definition on all systems, so that information about files can be moved from one system to another portably. Not all bits apply to all systems. The only required bit is [ModeDir] for directories.' format: uint32 title: A FileMode represents a file's mode and permission bits. type: integer x-go-package: os VolumeOptions: properties: DriverConfig: $ref: '#/definitions/Driver' Labels: additionalProperties: type: string type: object NoCopy: type: boolean Subpath: type: string title: VolumeOptions represents the options for a mount of type volume. type: object x-go-package: github.com/moby/moby/api/types/mount LinuxResources: description: LinuxResources has container runtime resource constraints properties: blockIO: $ref: '#/definitions/LinuxBlockIO' cpu: $ref: '#/definitions/LinuxCPU' devices: description: Devices configures the device allowlist. items: $ref: '#/definitions/LinuxDeviceCgroup' type: array x-go-name: Devices hugepageLimits: description: Hugetlb limits (in bytes). Default to reservation limits if supported. items: $ref: '#/definitions/LinuxHugepageLimit' type: array x-go-name: HugepageLimits memory: $ref: '#/definitions/LinuxMemory' network: $ref: '#/definitions/LinuxNetwork' pids: $ref: '#/definitions/LinuxPids' rdma: additionalProperties: $ref: '#/definitions/LinuxRdma' description: 'Rdma resource restriction configuration. Limits are a set of key value pairs that define RDMA resource limits, where the key is device name and value is resource limits.' type: object x-go-name: Rdma unified: additionalProperties: type: string description: Unified resources. type: object x-go-name: Unified type: object x-go-package: github.com/opencontainers/runtime-spec/specs-go PodRmReport: type: object x-go-package: go.podman.io/podman/v6/pkg/domain/entities PodRestartReport: type: object x-go-package: go.podman.io/podman/v6/pkg/domain/entities IDResponse: properties: Id: description: The id of the newly created object. type: string x-go-name: ID required: - Id type: object x-go-package: go.podman.io/podman/v6/pkg/domain/entities/types PerNetworkOptions: properties: aliases: description: 'Aliases contains a list of names which the dns server should resolve to this container. Should only be set when DNSEnabled is true on the Network. If aliases are set but there is no dns support for this network the network interface implementation should ignore this and NOT error. Optional.' items: type: string type: array x-go-name: Aliases interface_name: description: 'InterfaceName for this container. Required in the backend. Optional in the frontend. Will be filled with ethX (where X is a integer) when empty.' type: string x-go-name: InterfaceName options: additionalProperties: type: string description: Driver-specific options for this container. type: object x-go-name: Options static_ips: description: StaticIPs for this container. Optional. items: type: string x-go-type: net.IP type: array x-go-name: StaticIPs static_mac: description: StaticMac for this container. Optional. format: string type: string x-go-name: StaticMAC x-go-type: go.podman.io/common/libnetwork/types.HardwareAddr title: PerNetworkOptions are options which should be set on a per network basis. type: object x-go-package: go.podman.io/common/libnetwork/types BindOptions: properties: CreateMountpoint: type: boolean NonRecursive: type: boolean Propagation: $ref: '#/definitions/Propagation' ReadOnlyForceRecursive: description: ReadOnlyForceRecursive raises an error if the mount cannot be made recursively read-only. type: boolean ReadOnlyNonRecursive: description: 'ReadOnlyNonRecursive makes the mount non-recursively read-only, but still leaves the mount recursive (unless NonRecursive is set to true in conjunction).' type: boolean title: BindOptions defines options specific to mounts of type "bind". type: object x-go-package: github.com/moby/moby/api/types/mount AutoUserNsOptions: properties: AdditionalGIDMappings: description: 'AdditionalGIDMappings specified additional GID mappings to include in the generated user namespace.' items: $ref: '#/definitions/IDMap' type: array AdditionalUIDMappings: description: 'AdditionalUIDMappings specified additional UID mappings to include in the generated user namespace.' items: $ref: '#/definitions/IDMap' type: array GroupFile: description: GroupFile to use if the container uses a volume. type: string InitialSize: description: 'InitialSize defines the minimum size for the user namespace. The created user namespace will have at least this size.' format: uint32 type: integer PasswdFile: description: PasswdFile to use if the container uses a volume. type: string Size: description: 'Size defines the size for the user namespace. If it is set to a value bigger than 0, the user namespace will have exactly this size. If it is not set, some heuristics will be used to find its size.' format: uint32 type: integer title: AutoUserNsOptions defines how to automatically create a user namespace. type: object x-go-package: go.podman.io/storage/types PodPauseReport: type: object x-go-package: go.podman.io/podman/v6/pkg/domain/entities LinuxHugepageLimit: description: Default to reservation limits if supported. Otherwise fallback to page fault limits. properties: limit: description: Limit is the limit of "hugepagesize" hugetlb reservations (if supported) or usage. format: uint64 type: integer x-go-name: Limit pageSize: description: 'Pagesize is the hugepage size. Format: "B'' (e.g. 64KB, 2MB, 1GB, etc.).' type: string x-go-name: Pagesize title: LinuxHugepageLimit structure corresponds to limiting kernel hugepages. type: object x-go-package: github.com/opencontainers/runtime-spec/specs-go InspectMount: description: 'InspectMount provides a record of a single mount in a container. It contains fields for both named and normal volumes. Only user-specified volumes will be included, and tmpfs volumes are not included even if the user specified them.' properties: Destination: description: 'The destination directory for the volume. Specified as a path within the container, as it would be passed into the OCI runtime.' type: string Driver: description: The driver used for the named volume. Empty for bind mounts. type: string Mode: description: 'Contains SELinux :z/:Z mount options. Unclear what, if anything, else goes in here.' type: string Name: description: The name of the volume. Empty for bind mounts. type: string Options: description: 'All remaining mount options. Additional data, not present in the original output.' items: type: string type: array Propagation: description: 'Mount propagation for the mount. Can be empty if not specified, but is always printed - no omitempty.' type: string RW: description: Whether the volume is read-write type: boolean Source: description: The source directory for the volume. type: string SubPath: description: 'SubPath object from the volume. Specified as a path within the source volume to be mounted at the Destination.' type: string Type: description: 'Whether the mount is a volume or bind mount. Allowed values are "volume" and "bind".' type: string type: object x-go-package: go.podman.io/podman/v6/libpod/define NamespaceMode: type: string x-go-package: go.podman.io/podman/v6/pkg/specgen PodPruneReport: type: object x-go-package: go.podman.io/podman/v6/pkg/domain/entities PodStatsReport: title: PodStatsReport includes pod-resource statistics data. type: object x-go-package: go.podman.io/podman/v6/pkg/domain/entities PodTopOKBody: properties: Processes: description: 'Each process running in the container, where each process is an array of values corresponding to the titles.' example: '{"Processes":[["root","13642","882","0","17:03","pts/0","00:00:00","/bin/bash"],["root","13735","13642","0","17:06","pts/0","00:00:00","sleep 10"]]}' items: items: type: string type: array type: array Titles: description: The ps column titles example: '{"Titles":["UID","PID","PPID","C","STIME","TTY","TIME","CMD"]}' items: type: string type: array type: object x-go-package: go.podman.io/podman/v6/pkg/api/handlers PodUnpauseReport: type: object x-go-package: go.podman.io/podman/v6/pkg/domain/entities PodStartReport: type: object x-go-package: go.podman.io/podman/v6/pkg/domain/entities LinuxBlockIO: description: LinuxBlockIO for Linux cgroup 'blkio' resource management properties: leafWeight: description: Specifies tasks' weight in the given cgroup while competing with the cgroup's child cgroups, CFQ scheduler only format: uint16 type: integer x-go-name: LeafWeight throttleReadBpsDevice: description: IO read rate limit per cgroup per device, bytes per second items: $ref: '#/definitions/LinuxThrottleDevice' type: array x-go-name: ThrottleReadBpsDevice throttleReadIOPSDevice: description: IO read rate limit per cgroup per device, IO per second items: $ref: '#/definitions/LinuxThrottleDevice' type: array x-go-name: ThrottleReadIOPSDevice throttleWriteBpsDevice: description: IO write rate limit per cgroup per device, bytes per second items: $ref: '#/definitions/LinuxThrottleDevice' type: array x-go-name: ThrottleWriteBpsDevice throttleWriteIOPSDevice: description: IO write rate limit per cgroup per device, IO per second items: $ref: '#/definitions/LinuxThrottleDevice' type: array x-go-name: ThrottleWriteIOPSDevice weight: description: Specifies per cgroup weight format: uint16 type: integer x-go-name: Weight weightDevice: description: Weight per cgroup per device, can override BlkioWeight items: $ref: '#/definitions/LinuxWeightDevice' type: array x-go-name: WeightDevice type: object x-go-package: github.com/opencontainers/runtime-spec/specs-go Propagation: title: Propagation represents the propagation of a mount. type: string x-go-package: github.com/moby/moby/api/types/mount InspectBlkioThrottleDevice: description: 'InspectBlkioThrottleDevice holds information about a speed cap for a device node. This cap applies to a specific operation (read, write, etc) on the given node.' properties: Path: description: Path is the path to the device this applies to. type: string Rate: description: 'Rate is the maximum rate. It is in either bytes per second or iops per second, determined by where it is used - documentation will indicate which is appropriate.' format: uint64 type: integer type: object x-go-package: go.podman.io/podman/v6/libpod/define LinuxCPU: description: LinuxCPU for Linux cgroup 'cpu' resource management properties: burst: description: 'CPU hardcap burst limit (in usecs). Allowed accumulated cpu time additionally for burst in a given period.' format: uint64 type: integer x-go-name: Burst cpus: description: CPUs to use within the cpuset. Default is to use any CPU available. type: string x-go-name: Cpus idle: description: 'cgroups are configured with minimum weight, 0: default behavior, 1: SCHED_IDLE.' format: int64 type: integer x-go-name: Idle mems: description: List of memory nodes in the cpuset. Default is to use any available memory node. type: string x-go-name: Mems period: description: CPU period to be used for hardcapping (in usecs). format: uint64 type: integer x-go-name: Period quota: description: CPU hardcap limit (in usecs). Allowed cpu time in a given period. format: int64 type: integer x-go-name: Quota realtimePeriod: description: CPU period to be used for realtime scheduling (in usecs). format: uint64 type: integer x-go-name: RealtimePeriod realtimeRuntime: description: How much time realtime scheduling may use (in usecs). format: int64 type: integer x-go-name: RealtimeRuntime shares: description: CPU shares (relative weight (ratio) vs. other cgroups with cpu shares). format: uint64 type: integer x-go-name: Shares type: object x-go-package: github.com/opencontainers/runtime-spec/specs-go Driver: properties: Name: type: string Options: additionalProperties: type: string type: object title: Driver represents a volume driver. type: object x-go-package: github.com/moby/moby/api/types/mount ImageOptions: properties: Subpath: type: string type: object x-go-package: github.com/moby/moby/api/types/mount IDMap: description: 'IDMap contains a single entry for user namespace range remapping. An array of IDMap entries represents the structure that will be provided to the Linux kernel for creating a user namespace.' properties: container_id: format: int64 type: integer x-go-name: ContainerID host_id: format: int64 type: integer x-go-name: HostID size: format: int64 type: integer x-go-name: Size type: object x-go-package: go.podman.io/storage/pkg/idtools PlayKubeReport: title: PlayKubeReport contains the results of running play kube. type: object x-go-package: go.podman.io/podman/v6/pkg/domain/entities PodSpecGenerator: description: PodSpecGenerator describes options to create a pod properties: Networks: additionalProperties: $ref: '#/definitions/PerNetworkOptions' description: 'Map of networks names to ids the container should join to. You can request additional settings for each network, you can set network aliases, static ips, static mac address and the network interface name for this container on the specific network. If the map is empty and the bridge network mode is set the container will be joined to the default network.' type: object cgroup_parent: description: 'CgroupParent is the parent for the Cgroup that the pod will create. This pod cgroup will, in turn, be the default cgroup parent for all containers in the pod. Optional.' type: string x-go-name: CgroupParent dns_option: description: 'DNSOption is a set of DNS options that will be used in the infra container''s resolv.conf, which will, by default, be shared with all containers in the pod. Conflicts with NoInfra=true. Optional.' items: type: string type: array x-go-name: DNSOption dns_search: description: 'DNSSearch is a set of DNS search domains that will be used in the infra container''s resolv.conf, which will, by default, be shared with all containers in the pod. If not provided, DNS search domains from the host''s resolv.conf will be used. Conflicts with NoInfra=true. Optional.' items: type: string type: array x-go-name: DNSSearch dns_server: description: 'DNSServer is a set of DNS servers that will be used in the infra container''s resolv.conf, which will, by default, be shared with all containers in the pod. If not provided, the host''s DNS servers will be used, unless the only server set is a localhost address. As the container cannot connect to the host''s localhost, a default server will instead be set. Conflicts with NoInfra=true. Optional.' items: type: string x-go-type: net.IP type: array x-go-name: DNSServer exit_policy: description: ExitPolicy determines the pod's exit and stop behaviour. type: string x-go-name: ExitPolicy hostadd: description: 'HostAdd is a set of hosts that will be added to the infra container''s etc/hosts that will, by default, be shared with all containers in the pod. Conflicts with NoInfra=true and NoManageHosts. Optional.' items: type: string type: array x-go-name: HostAdd hostname: description: 'Hostname is the pod''s hostname. If not set, the name of the pod will be used (if a name was not provided here, the name auto-generated for the pod will be used). This will be used by the infra container and all containers in the pod as long as the UTS namespace is shared. Optional.' type: string x-go-name: Hostname hostsFile: description: 'HostsFile is the base file to create the `/etc/hosts` file inside the infra container. This must either be an absolute path to a file on the host system, or one of the special flags `image` or `none`. If it is empty it defaults to the base_hosts_file configuration in containers.conf. Conflicts with NoInfra=true and NoManageHosts. Optional.' type: string x-go-name: HostsFile idmappings: $ref: '#/definitions/IDMappingOptions' image_volumes: description: 'Image volumes bind-mount a container-image mount into the pod''s infra container. Optional.' items: $ref: '#/definitions/ImageVolume' type: array x-go-name: ImageVolumes infra_command: description: 'InfraCommand sets the command that will be used to start the infra container. If not set, the default set in the Libpod configuration file will be used. Conflicts with NoInfra=true. Optional.' items: type: string type: array x-go-name: InfraCommand infra_conmon_pid_file: description: 'InfraConmonPidFile is a custom path to store the infra container''s conmon PID.' type: string x-go-name: InfraConmonPidFile infra_image: description: 'InfraImage is the image that will be used for the infra container. If not set, the default set in the Libpod configuration file will be used. Conflicts with NoInfra=true. Optional.' type: string x-go-name: InfraImage infra_name: description: 'InfraName is the name that will be used for the infra container. If not set, the default set in the Libpod configuration file will be used. Conflicts with NoInfra=true. Optional.' type: string x-go-name: InfraName ipcns: $ref: '#/definitions/Namespace' labels: additionalProperties: type: string description: 'Labels are key-value pairs that are used to add metadata to pods. Optional.' type: object x-go-name: Labels mounts: description: 'Mounts are mounts that will be added to the pod. These will supersede Image Volumes and VolumesFrom volumes where there are conflicts. Optional.' items: $ref: '#/definitions/Mount' type: array x-go-name: Mounts name: description: 'Name is the name of the pod. If not provided, a name will be generated when the pod is created. Optional.' type: string x-go-name: Name netns: $ref: '#/definitions/Namespace' network_options: additionalProperties: items: type: string type: array description: 'NetworkOptions are additional options for each network Optional.' type: object x-go-name: NetworkOptions no_infra: description: 'NoInfra tells the pod not to create an infra container. If this is done, many networking-related options will become unavailable. Conflicts with setting any options in PodNetworkConfig, and the InfraCommand and InfraImages in this struct. Optional.' type: boolean x-go-name: NoInfra no_manage_hostname: description: 'NoManageHostname indicates that /etc/hostname should not be managed by the pod. Instead, each container will create a separate etc/hostname as they would if not in a pod.' type: boolean x-go-name: NoManageHostname no_manage_hosts: description: 'NoManageHosts indicates that /etc/hosts should not be managed by the pod. Instead, each container will create a separate /etc/hosts as they would if not in a pod. Conflicts with HostAdd.' type: boolean x-go-name: NoManageHosts no_manage_resolv_conf: description: 'NoManageResolvConf indicates that /etc/resolv.conf should not be managed by the pod. Instead, each container will create and manage a separate resolv.conf as if they had not joined a pod. Conflicts with NoInfra=true and DNSServer, DNSSearch, DNSOption. Optional.' type: boolean x-go-name: NoManageResolvConf overlay_volumes: description: 'Overlay volumes are named volumes that will be added to the pod. Optional.' items: $ref: '#/definitions/OverlayVolume' type: array x-go-name: OverlayVolumes pidns: $ref: '#/definitions/Namespace' pod_create_command: items: type: string type: array x-go-name: PodCreateCommand pod_devices: description: Devices contains user specified Devices to be added to the Pod items: type: string type: array x-go-name: Devices portmappings: description: 'PortMappings is a set of ports to map into the infra container. As, by default, containers share their network with the infra container, this will forward the ports to the entire pod. Only available if NetNS is set to Bridge or Pasta. Optional.' items: $ref: '#/definitions/PortMapping' type: array x-go-name: PortMappings resource_limits: $ref: '#/definitions/LinuxResources' restart_policy: description: 'RestartPolicy is the pod''s restart policy - an action which will be taken when one or all the containers in the pod exits. If not given, the default policy will be set to Always, which restarts the containers in the pod when they exit indefinitely. Optional.' type: string x-go-name: RestartPolicy restart_tries: description: 'RestartRetries is the number of attempts that will be made to restart the container. Only available when RestartPolicy is set to "on-failure". Optional.' format: uint64 type: integer x-go-name: RestartRetries security_opt: items: type: string type: array x-go-name: SecurityOpt serviceContainerID: description: The ID of the pod's service container. type: string x-go-name: ServiceContainerID share_parent: description: 'PodCreateCommand is the command used to create this pod. This will be shown in the output of Inspect() on the pod, and may also be used by some tools that wish to recreate the pod (e.g. `podman generate systemd --new`). Optional. ShareParent determines if all containers in the pod will share the pod''s cgroup as the cgroup parent' type: boolean x-go-name: ShareParent shared_namespaces: description: 'SharedNamespaces instructs the pod to share a set of namespaces. Shared namespaces will be joined (by default) by every container which joins the pod. If not set and NoInfra is false, the pod will set a default set of namespaces to share. Conflicts with NoInfra=true. Optional.' items: type: string type: array x-go-name: SharedNamespaces shm_size: description: 'ShmSize is the size of the tmpfs to mount in at /dev/shm, in bytes. Conflicts with ShmSize if IpcNS is not private. Optional.' format: int64 type: integer x-go-name: ShmSize shm_size_systemd: description: 'ShmSizeSystemd is the size of systemd-specific tmpfs mounts specifically /run, /run/lock, /var/log/journal and /tmp. Optional' format: int64 type: integer x-go-name: ShmSizeSystemd sysctl: additionalProperties: type: string description: Sysctl sets kernel parameters for the pod type: object x-go-name: Sysctl userns: $ref: '#/definitions/Namespace' utsns: $ref: '#/definitions/Namespace' volumes: description: 'Volumes are named volumes that will be added to the pod. These will supersede Image Volumes and VolumesFrom volumes where there are conflicts. Optional.' items: $ref: '#/definitions/NamedVolume' type: array x-go-name: Volumes volumes_from: description: 'VolumesFrom is a set of containers whose volumes will be added to this pod. The name or ID of the container must be provided, and may optionally be followed by a : and then one or more comma-separated options. Valid options are ''ro'', ''rw'', and ''z''. Options will be used for all volumes sourced from the container.' items: type: string type: array x-go-name: VolumesFrom type: object x-go-package: go.podman.io/podman/v6/pkg/specgen LinuxRdma: description: LinuxRdma for Linux cgroup 'rdma' resource management (Linux 4.11) properties: hcaHandles: description: Maximum number of HCA handles that can be opened. Default is "no limit". format: uint32 type: integer x-go-name: HcaHandles hcaObjects: description: Maximum number of HCA objects that can be created. Default is "no limit". format: uint32 type: integer x-go-name: HcaObjects type: object x-go-package: github.com/opencontainers/runtime-spec/specs-go LinuxPids: description: LinuxPids for Linux cgroup 'pids' resource management (Linux 4.3) properties: limit: description: Maximum number of PIDs. Default is "no limit". format: int64 type: integer x-go-name: Limit type: object x-go-package: github.com/opencontainers/runtime-spec/specs-go Namespace: description: Namespace describes the namespace properties: nsmode: $ref: '#/definitions/NamespaceMode' value: type: string x-go-name: Value type: object x-go-package: go.podman.io/podman/v6/pkg/specgen IDMappingOptions: description: 'IDMappingOptions are used for specifying how ID mapping should be set up for a layer or container.' properties: AutoUserNs: type: boolean AutoUserNsOpts: $ref: '#/definitions/AutoUserNsOptions' GIDMap: items: $ref: '#/definitions/IDMap' type: array HostGIDMapping: type: boolean HostUIDMapping: description: 'UIDMap and GIDMap are used for setting up a layer''s root filesystem for use inside of a user namespace where ID mapping is being used. If HostUIDMapping/HostGIDMapping is true, no mapping of the respective type will be used. Otherwise, if UIDMap and/or GIDMap contain at least one mapping, one or both will be used. By default, if neither of those conditions apply, if the layer has a parent layer, the parent layer''s mapping will be used, and if it does not have a parent layer, the mapping which was passed to the Store object when it was initialized will be used.' type: boolean UIDMap: items: $ref: '#/definitions/IDMap' type: array type: object x-go-package: go.podman.io/storage/types LinuxMemory: description: LinuxMemory for Linux cgroup 'memory' resource management properties: checkBeforeUpdate: description: 'CheckBeforeUpdate enables checking if a new memory limit is lower than the current usage during update, and if so, rejecting the new limit.' type: boolean x-go-name: CheckBeforeUpdate disableOOMKiller: description: DisableOOMKiller disables the OOM killer for out of memory conditions type: boolean x-go-name: DisableOOMKiller kernel: description: 'Kernel memory limit (in bytes). Deprecated: kernel-memory limits are not supported in cgroups v2, and were obsoleted in [kernel v5.4]. This field should no longer be used, as it may be ignored by runtimes. [kernel v5.4]: https://github.com/torvalds/linux/commit/0158115f702b0ba208ab0' format: int64 type: integer x-go-name: Kernel kernelTCP: description: Kernel memory limit for tcp (in bytes) format: int64 type: integer x-go-name: KernelTCP limit: description: Memory limit (in bytes). format: int64 type: integer x-go-name: Limit reservation: description: Memory reservation or soft_limit (in bytes). format: int64 type: integer x-go-name: Reservation swap: description: Total memory limit (memory + swap). format: int64 type: integer x-go-name: Swap swappiness: description: How aggressive the kernel will swap memory pages. format: uint64 type: integer x-go-name: Swappiness useHierarchy: description: Enables hierarchical memory accounting type: boolean x-go-name: UseHierarchy type: object x-go-package: github.com/opencontainers/runtime-spec/specs-go LinuxThrottleDevice: description: LinuxThrottleDevice struct holds a `major:minor rate_per_second` pair properties: major: description: Major is the device's major number. format: int64 type: integer x-go-name: Major minor: description: Minor is the device's minor number. format: int64 type: integer x-go-name: Minor rate: description: Rate is the IO rate limit per cgroup per device format: uint64 type: integer x-go-name: Rate type: object x-go-package: github.com/opencontainers/runtime-spec/specs-go OverlayVolume: description: 'OverlayVolume holds information about an overlay volume that will be mounted into the container.' properties: destination: description: Destination is the absolute path where the mount will be placed in the container. type: string x-go-name: Destination options: description: Options holds overlay volume options. items: type: string type: array x-go-name: Options source: description: Source specifies the source path of the mount. type: string x-go-name: Source type: object x-go-package: go.podman.io/podman/v6/pkg/specgen Mount: properties: BindOptions: $ref: '#/definitions/BindOptions' ClusterOptions: $ref: '#/definitions/ClusterOptions' Consistency: $ref: '#/definitions/Consistency' ImageOptions: $ref: '#/definitions/ImageOptions' ReadOnly: type: boolean Source: description: 'Source specifies the name of the mount. Depending on mount type, this may be a volume name or a host path, or even ignored. Source is not supported for tmpfs (must be an empty value)' type: string Target: type: string TmpfsOptions: $ref: '#/definitions/TmpfsOptions' Type: $ref: '#/definitions/Type' VolumeOptions: $ref: '#/definitions/VolumeOptions' title: Mount represents a mount (volume). type: object x-go-package: github.com/moby/moby/api/types/mount ImageVolume: description: 'ImageVolume is a volume based on a container image. The container image is first mounted on the host and is then bind-mounted into the container. An ImageVolume is always mounted read-only.' properties: Destination: description: Destination is the absolute path of the mount in the container. type: string ReadWrite: description: ReadWrite sets the volume writable. type: boolean Source: description: 'Source is the source of the image volume. The image can be referred to by name and by ID.' type: string subPath: description: 'SubPath mounts a particular path within the image. If empty, the whole image is mounted.' type: string x-go-name: SubPath type: object x-go-package: go.podman.io/podman/v6/pkg/specgen LinuxInterfacePriority: description: LinuxInterfacePriority for network interfaces properties: name: description: Name is the name of the network interface type: string x-go-name: Name priority: description: Priority for the interface format: uint32 type: integer x-go-name: Priority type: object x-go-package: github.com/opencontainers/runtime-spec/specs-go responses: podRestartResponse: description: Restart pod schema: $ref: '#/definitions/PodRestartReport' badParamError: description: Bad parameter in request schema: $ref: '#/definitions/ErrorModel' podUnpauseResponse: description: Unpause pod schema: $ref: '#/definitions/PodUnpauseReport' podTopResponse: description: List processes in pod schema: $ref: '#/definitions/PodTopOKBody' podKillResponse: description: Kill Pod schema: $ref: '#/definitions/PodKillReport' podPruneResponse: description: Prune pod schema: $ref: '#/definitions/PodPruneReport' internalError: description: Internal server error schema: $ref: '#/definitions/ErrorModel' podStopResponse: description: Stop pod schema: $ref: '#/definitions/PodStopReport' podsListResponse: description: List pods schema: items: $ref: '#/definitions/ListPodsReport' type: array podRmResponse: description: Rm pod schema: $ref: '#/definitions/PodRmReport' podNotFound: description: No such pod schema: $ref: '#/definitions/ErrorModel' playKubeResponseLibpod: description: PlayKube response schema: $ref: '#/definitions/PlayKubeReport' podStatsResponse: description: Pod Statistics schema: items: $ref: '#/definitions/PodStatsReport' type: array podPauseResponse: description: Pause pod schema: $ref: '#/definitions/PodPauseReport' podAlreadyStoppedError: description: Pod already stopped schema: $ref: '#/definitions/ErrorModel' podAlreadyStartedError: description: Pod already started schema: $ref: '#/definitions/ErrorModel' podInspectResponse: description: Inspect pod schema: $ref: '#/definitions/InspectPodData' podStartResponse: description: Start pod schema: $ref: '#/definitions/PodStartReport'