1

尝试使用命令启动 Selenoid 时出错cm

$ ./cm selenoid start —vnc
2017/10/26 13:19:57 Using Docker...
2017/10/26 13:19:57 registry.ping url=https://registry.hub.docker.com/v2/
2017/10/26 13:19:59 Failed to list images: Error response from daemon: client is newer than server (client API version: 1.29, server API version: 1.24)
2017/10/26 13:19:59 Downloading Selenoid...
2017/10/26 13:19:59 Fetching tags for image "aerokube/selenoid"...
2017/10/26 13:19:59 registry.tags url=https://registry.hub.docker.com/v2/aerokube/selenoid/tags/list repository=aerokube/selenoid
2017/10/26 13:20:00 Failed to pull image "aerokube/selenoid:1.3.8": Error response from daemon: client is newer than server (client API version: 1.29, server API version: 1.24)
2017/10/26 13:20:00 Failed to start: failed to pull Selenoid image
4

1 回答 1

0

发生这种情况是因为内部使用的 Docker 客户端cm和安装的 Docker 服务器版本不兼容。cm内部使用与命令相同的官方 Go 客户端docker,因此任何环境变量都适用。为了解决这个问题,我们需要通过设置环境变量来告诉客户端使用正确的 Docker API 版本:

DOCKER_API_VERSION=1.24 ./cm selenoid start --vnc

UPD:从 CM 版本 1.4.0 开始,这是自动确定的。

于 2017-10-27T07:05:59.310 回答