1

我正在使用 docker-py 客户端根据需要创建容器。因此,为此,我使用生成器来提供端口号,并尝试在生成器的主机特定端口上使用 httpd 映像。但是,对于任何数字,对于我尝试使用的任何端口号,客户端都会给出(“无效的端口规范:”此处的端口号“”)。

下面是我正在尝试的示例代码:

import docker
client = docker.from_env()
container= client.containers.run(image="httpd", ports={'80/tcp': 43545}, detach=True)

注意:数字 43545 在这里没有任何意义。

码头工人详情:

  1. 客户端 - 19.03.6
  2. API 版本 - 1.40
  3. 引擎:19.03.6

错误:

File "/project/api/.venv/lib/python3.7/site-packages/docker/models/containers.py", line 803, in run
detach=detach, **kwargs)
File "/project/api/.venv/lib/python3.7/site-packages/docker/models/containers.py", line 861, in create
resp = self.client.api.create_container(**create_kwargs)
File "/project/api/.venv/lib/python3.7/site-packages/docker/api/container.py", line 429, in create_container
return self.create_container_from_config(config, name)
File "/projectapi/.venv/lib/python3.7/site-packages/docker/api/container.py", line 440, in create_container_from_config
return self._result(res, True)
File "/projectpi/.venv/lib/python3.7/site-packages/docker/api/client.py", line 267, in _result
self._raise_for_status(response)
File "/projectapi/.venv/lib/python3.7/site-packages/docker/api/client.py", line 263, in _raise_for_status
raise create_api_error_from_http_exception(e)
File "/projectyter/api/.venv/lib/python3.7/site-packages/docker/errors.py", line 31, in create_api_error_from_http_exception
raise cls(e, response=response, explanation=explanation)
docker.errors.APIError: 400 Client Error: Bad Request ("invalid port specification: "43545"")

4

0 回答 0