快速解决docker-py api版本不兼容的问题


Posted in Python onAugust 30, 2019

docker提供了Python、Go等编程语言的api。最近打算用docker SDK for Python(以下简称docker-py)做点东西,本来以为按照官网上的步骤安装很简单,pip install docker 就行,然而出现了版本不兼容的问题。

报错如下:

docker.errors.APIError: 400 Client Error: Bad Request ("client is newer than server (client API version: 1.30, server API version: 1.19)")

可以使用指令 docker version查看版本号,果然api版本是1.19,但是docker-py的版本是1.30。在docker-py官网 里找一找解决方法,from_env()的解释如下:

from_env()

 Return a client configured from environment variables.

 The environment variables used are the same as those used by the Docker command-line client. They are:

 DOCKER_HOST

  The URL to the Docker host.

 DOCKER_TLS_VERIFY

  Verify the host against a CA certificate.

 DOCKER_CERT_PATH

  A path to a directory containing TLS certificates to use when connecting to the Docker host.

 Parameters: 

  version (str) ? The version of the API to use. Set to auto to automatically detect the server's version. Default: 1.26
  timeout (int) ? Default timeout for API calls, in seconds.
  ssl_version (int) ? A valid SSL version.
  assert_hostname (bool) ? Verify the hostname of the server.
  environment (dict) ? The environment to read environment variables from. Default: the value of os.environ

有一个参数可以指定version,于是这样写:client=docker.from_env(version='1.19') 似乎就能避免版本不兼容的问题了。然而还是报错:

ValueError: zero length field name in format

搜了一下这是因为我的python版本是2.6,在对参数解析时出现格式问题,没办法,只好升级python2.7了。

在官网的change日志中可以看到,2.0版本之后就不再支持python2.6了。

2.0.0
...
Breaking changes
 Dropped support for Python 2.6

将python2.6升级到2.7,不仅要编译安装python2.7,还要把/usr/local/bin/pip2.7软连接给/usr/bin/pip 以覆盖原来的pip2.6,然后重新pip install docker

如果是centos系统,不要忘了修改/usr/bin/yum ,将第一行#!/usr/bin/python 改为#!/usr/bin/python2.6 ,否则yum指令无法使用。

以上这篇快速解决docker-py api版本不兼容的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python使用cookielib模块操作cookie的实例教程
Jul 12 Python
巧用python和libnmapd,提取Nmap扫描结果
Aug 23 Python
对python创建及引用动态变量名的示例讲解
Nov 10 Python
selenium3+python3环境搭建教程图解
Dec 07 Python
Python实现多态、协议和鸭子类型的代码详解
May 05 Python
Python中函数参数匹配模型详解
Jun 09 Python
django重新生成数据库中的某张表方法
Aug 28 Python
Python 变量的创建过程详解
Sep 02 Python
win10环境下配置vscode python开发环境的教程详解
Oct 16 Python
使用pytorch和torchtext进行文本分类的实例
Jan 08 Python
python IP地址转整数
Nov 20 Python
python 如何用terminal输入参数
May 25 Python
Python 使用 Pillow 模块给图片添加文字水印的方法
Aug 30 #Python
python pillow模块使用方法详解
Aug 30 #Python
docker-py 用Python调用Docker接口的方法
Aug 30 #Python
tesserocr与pytesseract模块的使用方法解析
Aug 30 #Python
Django获取应用下的所有models的例子
Aug 30 #Python
Django自带日志 settings.py文件配置方法
Aug 30 #Python
tensorflow如何批量读取图片
Aug 29 #Python
You might like
比较简单的百度网盘文件直链PHP代码
2013/03/24 PHP
php页面防重复提交方法总结
2013/11/25 PHP
浅谈php中fopen不能创建中文文件名文件的问题
2017/02/06 PHP
CMSPRESS 10行代码搞定 PHP无限级分类2
2018/03/30 PHP
php post json参数的传递和接收处理方法
2018/05/31 PHP
PHP 结合 Boostrap 结合 js 实现学生列表删除编辑及搜索功能
2019/05/21 PHP
使用js判断数组中是否包含某一元素(类似于php中的in_array())
2013/12/12 Javascript
javascript实现实时输出当前的时间
2015/04/27 Javascript
swtich/if...else的替代语句
2015/08/16 Javascript
JS运动相关知识点小结(附弹性运动示例)
2016/01/08 Javascript
javascript实现可键盘控制的抽奖系统
2016/03/10 Javascript
jQuery验证插件validate使用详解
2016/05/11 Javascript
原生js实现class的添加和删除简单代码
2016/07/12 Javascript
jQuery中delegate()方法的用法详解
2016/10/13 Javascript
关于angularJs指令的Scope(作用域)介绍
2016/10/25 Javascript
详解webpack es6 to es5支持配置
2017/05/04 Javascript
Js利用prototype自定义数组方法示例
2017/10/20 Javascript
Javascript中的作用域及块级作用域
2017/12/08 Javascript
vue-router路由懒加载和权限控制详解
2017/12/13 Javascript
Node.js中Koa2在控制台输出请求日志的方法示例
2019/05/02 Javascript
layui使用数据表格实现购物车功能
2019/07/26 Javascript
11个Javascript小技巧帮你提升代码质量(小结)
2020/12/28 Javascript
[01:31:03]DOTA2完美盛典全回顾 见证十五项大奖花落谁家
2017/11/28 DOTA
Python计时相关操作详解【time,datetime】
2017/05/26 Python
python的scikit-learn将特征转成one-hot特征的方法
2018/07/10 Python
便捷提取python导入包的属性方法
2018/10/15 Python
Dlib+OpenCV深度学习人脸识别的方法示例
2019/05/14 Python
详解Python并发编程之从性能角度来初探并发编程
2019/08/23 Python
Python小程序 控制鼠标循环点击代码实例
2019/10/08 Python
Python通过len函数返回对象长度
2020/10/22 Python
html5拖拽应用记录及注意点
2020/05/27 HTML / CSS
简述安装Slackware Linux系统的过程
2012/01/12 面试题
2014年污水处理厂工作总结
2014/12/19 职场文书
感谢信的格式
2015/01/21 职场文书
文员岗位职责
2015/02/04 职场文书
晚会主持人开场白台词
2015/05/28 职场文书