diff --git a/stubs/docker/docker/types/containers.pyi b/stubs/docker/docker/types/containers.pyi index 891137e94..d3b3a2fb6 100644 --- a/stubs/docker/docker/types/containers.pyi +++ b/stubs/docker/docker/types/containers.pyi @@ -1,6 +1,14 @@ from _typeshed import Incomplete +from pathlib import Path +from typing import Literal, TypedDict, type_check_only from .base import DictType +from .services import Mount + +@type_check_only +class ContainerWeightDevice(TypedDict): + Path: Path + Weight: int class LogConfigTypesEnum: JSON: Incomplete @@ -63,71 +71,71 @@ class DeviceRequest(DictType): class HostConfig(dict[str, Incomplete]): def __init__( self, - version, + version: str, binds: Incomplete | None = None, port_bindings: Incomplete | None = None, - lxc_conf: Incomplete | None = None, + lxc_conf: dict[Incomplete, Incomplete] | None = None, publish_all_ports: bool = False, - links: Incomplete | None = None, + links: dict[str, str | None] | None = None, privileged: bool = False, - dns: Incomplete | None = None, - dns_search: Incomplete | None = None, - volumes_from: Incomplete | None = None, - network_mode: Incomplete | None = None, - restart_policy: Incomplete | None = None, - cap_add: Incomplete | None = None, - cap_drop: Incomplete | None = None, - devices: Incomplete | None = None, - extra_hosts: Incomplete | None = None, - read_only: Incomplete | None = None, - pid_mode: Incomplete | None = None, - ipc_mode: Incomplete | None = None, - security_opt: Incomplete | None = None, - ulimits: Incomplete | None = None, - log_config: Incomplete | None = None, - mem_limit: Incomplete | None = None, - memswap_limit: Incomplete | None = None, - mem_reservation: Incomplete | None = None, - kernel_memory: Incomplete | None = None, - mem_swappiness: Incomplete | None = None, - cgroup_parent: Incomplete | None = None, - group_add: Incomplete | None = None, - cpu_quota: Incomplete | None = None, - cpu_period: Incomplete | None = None, - blkio_weight: Incomplete | None = None, - blkio_weight_device: Incomplete | None = None, + dns: list[Incomplete] | None = None, + dns_search: list[Incomplete] | None = None, + volumes_from: list[str] | None = None, + network_mode: str | None = None, + restart_policy: dict[Incomplete, Incomplete] | None = None, + cap_add: list[str] | None = None, + cap_drop: list[str] | None = None, + devices: list[str] | None = None, + extra_hosts: dict[Incomplete, Incomplete] | None = None, + read_only: bool | None = None, + pid_mode: str | None = None, + ipc_mode: str | None = None, + security_opt: list[str] | None = None, + ulimits: list[Ulimit] | None = None, + log_config: LogConfig | None = None, + mem_limit: str | int | None = None, + memswap_limit: str | int | None = None, + mem_reservation: str | int | None = None, + kernel_memory: str | int | None = None, + mem_swappiness: int | None = None, + cgroup_parent: str | None = None, + group_add: list[str | int] | None = None, + cpu_quota: int | None = None, + cpu_period: int | None = None, + blkio_weight: int | None = None, + blkio_weight_device: list[ContainerWeightDevice] | None = None, device_read_bps: Incomplete | None = None, device_write_bps: Incomplete | None = None, device_read_iops: Incomplete | None = None, device_write_iops: Incomplete | None = None, oom_kill_disable: bool = False, - shm_size: Incomplete | None = None, - sysctls: Incomplete | None = None, - tmpfs: Incomplete | None = None, - oom_score_adj: Incomplete | None = None, - dns_opt: Incomplete | None = None, - cpu_shares: Incomplete | None = None, - cpuset_cpus: Incomplete | None = None, - userns_mode: Incomplete | None = None, - uts_mode: Incomplete | None = None, - pids_limit: Incomplete | None = None, - isolation: Incomplete | None = None, + shm_size: str | int | None = None, + sysctls: dict[Incomplete, Incomplete] | None = None, + tmpfs: dict[str, str] | None = None, + oom_score_adj: int | None = None, + dns_opt: list[Incomplete] | None = None, + cpu_shares: int | None = None, + cpuset_cpus: str | None = None, + userns_mode: str | None = None, + uts_mode: str | None = None, + pids_limit: int | None = None, + isolation: str | None = None, auto_remove: bool = False, - storage_opt: Incomplete | None = None, - init: Incomplete | None = None, - init_path: Incomplete | None = None, - volume_driver: Incomplete | None = None, - cpu_count: Incomplete | None = None, - cpu_percent: Incomplete | None = None, - nano_cpus: Incomplete | None = None, - cpuset_mems: Incomplete | None = None, - runtime: Incomplete | None = None, - mounts: Incomplete | None = None, - cpu_rt_period: Incomplete | None = None, - cpu_rt_runtime: Incomplete | None = None, - device_cgroup_rules: Incomplete | None = None, - device_requests: Incomplete | None = None, - cgroupns: Incomplete | None = None, + storage_opt: dict[Incomplete, Incomplete] | None = None, + init: bool | None = None, + init_path: str | None = None, + volume_driver: str | None = None, + cpu_count: int | None = None, + cpu_percent: int | None = None, + nano_cpus: int | None = None, + cpuset_mems: str | None = None, + runtime: str | None = None, + mounts: list[Mount] | None = None, + cpu_rt_period: int | None = None, + cpu_rt_runtime: int | None = None, + device_cgroup_rules: list[Incomplete] | None = None, + device_requests: list[DeviceRequest] | None = None, + cgroupns: Literal["private", "host"] | None = None, ) -> None: ... def host_config_type_error(param, param_value, expected): ... @@ -138,27 +146,27 @@ def host_config_incompatible_error(param, param_value, incompatible_param): ... class ContainerConfig(dict[str, Incomplete]): def __init__( self, - version, + version: str, image, - command, - hostname: Incomplete | None = None, - user: Incomplete | None = None, + command: str | list[str], + hostname: str | None = None, + user: str | int | None = None, detach: bool = False, stdin_open: bool = False, tty: bool = False, - ports: Incomplete | None = None, - environment: Incomplete | None = None, - volumes: Incomplete | None = None, + ports: dict[str, int | None] | None = None, + environment: dict[str, str] | list[str] | None = None, + volumes: str | list[str] | None = None, network_disabled: bool = False, - entrypoint: Incomplete | None = None, - working_dir: Incomplete | None = None, - domainname: Incomplete | None = None, + entrypoint: str | list[str] | None = None, + working_dir: str | None = None, + domainname: str | None = None, host_config: Incomplete | None = None, - mac_address: Incomplete | None = None, - labels: Incomplete | None = None, - stop_signal: Incomplete | None = None, + mac_address: str | None = None, + labels: dict[str, str] | list[str] | None = None, + stop_signal: str | None = None, networking_config: Incomplete | None = None, healthcheck: Incomplete | None = None, - stop_timeout: Incomplete | None = None, - runtime: Incomplete | None = None, + stop_timeout: int | None = None, + runtime: str | None = None, ) -> None: ...