Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7 docker py错误:name错误:name';客户';没有定义_Python 2.7_Dockerpy - Fatal编程技术网

Python 2.7 docker py错误:name错误:name';客户';没有定义

Python 2.7 docker py错误:name错误:name';客户';没有定义,python-2.7,dockerpy,Python 2.7,Dockerpy,我试图让docker py工作起来,但遇到了一个根本与docker py无关的问题 我通过pip安装了docker py(这里是重新运行它的输出-应该回答版本问题): >pip安装docker py 已满足要求:docker py in/usr/local/lib/python2.7/site-packages 已满足要求:docker pycreds>=0.2.1 in/usr/local/lib/python2.7/site-packages(来自docker py) 已满足要求:backp

我试图让docker py工作起来,但遇到了一个根本与docker py无关的问题

我通过pip安装了docker py(这里是重新运行它的输出-应该回答版本问题):

>pip安装docker py
已满足要求:docker py in/usr/local/lib/python2.7/site-packages
已满足要求:docker pycreds>=0.2.1 in/usr/local/lib/python2.7/site-packages(来自docker py)
已满足要求:backport.ssl匹配主机名>=3.5;python_版本=1.0.16;/usr/local/lib/python2.7/site-packages中的python_版本<“3.3”(来自docker py)
要求已经满足:要求=2.11.0,>=2.5.2 in/usr/local/lib/python2.7/site-packages(来自docker py)
已满足要求:六个>=1.4.0 in/usr/local/lib/python2.7/site-packages(来自docker py)
已满足要求:websocket客户端>=0.32.0 in/usr/local/lib/python2.7/site-packages(来自docker py)
正在尝试执行(来自)的部分代码示例,但我立即失败:

>python                                                                                                                                                                                                                     
Python 2.7.13 (default, Dec 17 2016, 23:03:43)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.42.1)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from docker import client
>>> cli = Client(base_url='unix://var/run/docker.sock')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'Client' is not defined
python Python 2.7.13(默认,2016年12月17日,23:03:43) [GCC 4.2.1达尔文兼容苹果LLVM 8.0.0(clang-800.0.42.1)] 有关详细信息,请键入“帮助”、“版权”、“信用证”或“许可证”。 >>>从docker导入客户端 >>>cli=客户端(基本url=)unix://var/run/docker.sock') 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 NameError:未定义名称“客户端” 我尝试一个利用AutoVersionClient(
client=AutoVersionClient(base_url=)的不同代码示例时遇到了类似的失败unix://var/run/docker.sock“)
),但如果未定义类似的AutoVersionClient,则会失败


在我的系统中,这确实是一个核心配置问题,但我不知道问题出在哪里。

客户端和客户端不是一回事

✗ python
Python 2.7.12 (default, Nov  8 2016, 15:40:43)
[GCC 4.2.1 Compatible Apple LLVM 7.0.2 (clang-700.1.81)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from docker import Client
>>> cli = Client(base_url='unix://var/run/docker.sock')
>>> from docker import client
>>>

如果已安装docker py 2.0或更新版本,则已重命名客户端。低级API现在是
docker.APIClient
,而不是
docker.Client

有趣的是,它允许我同时导入这两个API。从来没有真正研究过这个问题。当大小写匹配时,我得到一个不同的错误:
TypeError:“module”对象不可调用
这里有一个建议,即端口正在使用中,这就是无法创建套接字的原因。不幸的是,该线程中没有提供解决方案。除此之外,我还使用ubuntu/trusty64(Python 2.7.6)设置了一个流浪者,运行了上述代码并得到了相同的结果,因此我认为这不是环境问题。谢谢
pip freeze
说我正在运行docker py==1.10.6。是的,MLindsay有正确的答案,我没有仔细观察。之所以能够同时导入这两个文件,是因为在中的
docker
目录中有一个
client.py
。来自
client.py
\uuuu init\uuuu.py
。因此,
docker.client.client
docker.client
是等价的。
✗ python
Python 2.7.12 (default, Nov  8 2016, 15:40:43)
[GCC 4.2.1 Compatible Apple LLVM 7.0.2 (clang-700.1.81)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from docker import Client
>>> cli = Client(base_url='unix://var/run/docker.sock')
>>> from docker import client
>>>