我正在尝试使用Ansible Docker模块,但我正在尝试运行我的剧本时遇到此错误 -
NameError: global name 'DEFAULT_DOCKER_API_VERSION' is not defined
我在https://github.com/ansible/ansible-modules-core/issues/1792找到了一个关于此的官方错误 .
我已经通过安装docker-py尝试了解决方法,但到目前为止还没有任何乐趣 .
什么可能出错?我正在尝试从连接到AWS的本地OSX主机运行我的Playbook .
4 回答
经过进一步调查后,我们设法通过使用 -
在我们的.yml文件中
pip是python的包管理器并随之安装 . 所以你想要做的是安装python .
在OS X上,我建议您先安装Homebrew,它是OS X的软件包管理器 . 安装Homebrew的命令是
安装Homebrew之后,您可以安装python并随之一起使用
通常它与缺少pip或docker-py库有关 .
我有这个在我的码头工作者ansible角色 .
TLDR;
-e use_tls=encrypt
我正在使用最新的
dockerpy==1.5.0
~/.bash_profile
我有eval "$(docker-machine env default)"
将运行现在您的环境已经设置好让我告诉您修复 . docker模块需要参数
tls=encrypt
. 您可以在Ansible任务中为docker模块的每次调用提供它,或者您可以通过-e use_tls=encrypt
或在您的playbook中将其设置为"globally":